Déplacer une plage de cellule en VBA

Bonjour j'aimerai savoir si c'est possible de déplacer une plage de cellule en vba.

Par exemple j'ai une plage de cellule range("E15:BL73") vers un autre endroit en fonction d'une semaine par exemple si on est en semaine 1 je redirige vers range("F6:BM64") si nous sommes semaine 5 vers Range("BN6:DU64").

Need help, il faut que je déplace aussi bien le contenu des cellules ( des croix dans le cas présent) que leurs couleur, bleu vert jaune et...

Merci !

Salut Naubin,

Salut le Forum,

En suivant ton exemple, voici le code à appliquer :

Range("E15:BL73").Cut Destination:=Range("F6:BM64")

Après, si tu souhaite déplacer ta plage selon la semaine en cours, tu peux utiliser cela :

If Format(Now, "ww", vbMonday) = 1 Then 'SEMAINE 1
Range("E15:BL73").Cut Destination:=Range("F6:BM64")
ElseIf Format(Now, "ww", vbMonday) = 5 Then 'SEMAINE 5
Range("E15:BL73").Cut Destination:=Range("BN6:DU64")
End If

Restant à dispo

j'ouvre deux fichiers

 set cls(chemin & fichier)
set clsr(chemin1& fichier1)
err
semaine = Format(Date, "ww", vbMonday, vbFirstFourDays) + 3 ( le +3 pour simuler 9)
Select Case semaine
    Case 5: Set rng = Range("F6:BM64")
    Case 9: Set rng = Range("BN6:DF64")
    Case 13: Set rng = Range("DG6:GC64")
    Case 17: Set rng = Range("GD6:IK64")
    Case 21: Set rng = Range("IL6:KS64")
    Case 25: Set rng = Range("KT6:NA64")
    Case 29: Set rng = Range("NB:PI64")
    Case 33: Set rng = Range("PJ6:RQ64")
    Case 37: Set rng = Range("RR6:TY64")
    Case 41: Set rng = Range("TZ6:WG64")
    Case 45: Set rng = Range("WH6:YO64")
    Case 49: Set rng = Range("YP6:AAW64")
    Case 52: Set rng = Range("AAX6:ADE64")
    Case Else: MsgBox "Problème"
End Select
 cls.Worksheets("Registre").Range("E15:BL73").Cut Destination:=clsr.Worksheets("5S M5").rng

cls et clsr = deux workbook différent et j'ai une erreur qui dit que la propriété ou méthode est non géré par cet objet :/

Bonjour naubin,

screen

1) pour chemin1& fichier1 : ajoute un espace avant « & » ➯ chemin1 & fichier1

2) pour ouvrir un fichier, c'est avec Workbooks.Open pas avec set

3) pour une instruction set la syntaxe correcte est : set variable_objet =

dhany

Bonjour dhany

j'utilise ca pour ouvrir le fichier

 Set clsr = Workbooks.Open(chemin & fichier)

je dois enlever set quand même ?

je met bien l'espace , c'est juste que je n'arrive pas a déplacer une plage de Cellule dans classeur à un autre en fonction d'une semaine ... :/ .

Merci

Bonjour naubin,

pour pouvoir te donner une meilleure réponse, j'aurais besoin de ton fichier (sans données confidentielles).

dhany

Re,

Je te remercie encore de m'aider.

Voici ci-joint les trois fichier.

J'ai supprimé tous ce qui est confidentielle.

Mode de fonctionnement:

le premier fichier sur l'onglet synthèse j'appuie sur le bouton 5S en fonction de mon poste je fais des actions.

Je quitte et ça m'enregistre une traçabilité dans l'onglet 5S , puis une fois la semaine écoulé j'ai une private sub que j'ai effacé sur les fichier partagé, qui permet de déclencher la macro. du module qui reste. ca permet d'ouvrir le deuxième fichier et de "copie-colle' la semaine en cours sur un nouveau fichier de 4 semaines consécutif. une fois que ces 4 semaines consécutif sont passé je prends la plage et je la copie dans le troisième fichier qui est lui annuel,

donc si nous sommes semaine 9 j'ouvre mon fichier pour la premier fois de la semaine, ma plage du fichier 1 se copie dans la semaine 8 du fichier 2 (car c'est les résultat S-1) puis la plage du fichier 2 se copie dans le fichier 3 donc de semaine 5 a 8. une fois terminé, Mon fichier deux se réinitialise, en remettant les couleurs deux départ ( donc je copie colle la grille de l'onglet "5S" vers l'onglet "Registre".) puis la 9ème semaine je la copie colle dans le premier fichier.

j'ai essayé d'être précis, je reste à disposition, merci

désolé, j'ai essayé, mais j'ai pas trouvé d'solution. j'espère qu'un autre intervenant pourra t'aider, alors continue de surveiller les futures réponses ; bonne chance !

dhany

Merci d'hanny !

pas de solution au problème ce jour :/

Rechercher des sujets similaires à "deplacer plage vba"