Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Comment coller une plage de cellule dans une feuille à nom variable

  • Initiateur de la discussion Initiateur de la discussion xavshelby
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

X

xavshelby

Guest
bonjour,

je dispose de deux feuilles (feuil1 et feuil2)

la feuil1 correspond à une liste d'articles avec un lieu de rangement précis (colonne D),
la feuil2 répertorie tous les lieux de rangements disponible.

Dans ma macro, je recherche le "texte" de la feuil1 col4 avec celui de la feuil2 colA.
si il existe, je crée une nouvelle feuille qui sera renommer avec la variable "texte".
si la feuille existe déjà, je selectionne cette feuille et je colle les col A, B et C de la feuil1 dans la première ligne vide.

Mon problème est que je n'arrive pas à faire un coller dans cette feuille avec un nom de variable.

Merci à tous pour vos solutions.

Ci-joint la macro.
 

Pièces jointes

Dernière modification par un modérateur:
Re : Comment coller une plage de cellule dans une feuille à nom variable

Vous avez "Propriété ou méthode non gérée par cet objet"
En effet Paste est une méthode de Worksheet mais pas de Range.
Est-ce normal que si la feuille est à créer rien n'y soit collé ? Je ne crois pas.
Par ailleurs inutile de boucler sur les feuilles
Si un collage des valeurs suffit ça pourrait donner quelque chose de ce genre:
VB:
For i = 2 To fin1
   empl = Feuil1.Cells(i, 4).Text     ' Texte situé dans la colonne 4 de la feuil1
   On Error Resume Next
   Set ws = Worksheets(empl)
   If Err Then
      Worksheets.Add After:=Worksheets(worksSheets.Count)
      Set ws = ActiveSheet: ws.Name = empl
      lvide = 1
   Else
      lvide = ws.Range("A65536").End(xlUp).Row + 1
      End If
   On Error GoTo 0
   ws.Cells(lvide, 1).Resize(, 3).Value = Feuil1.Cells(i, "A").Resize(, 3).Value
   Next i
Voilà. À part ça je n'ai rien compris à ce que vient faire la feuille2 là dedans.
À +
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
15
Affichages
784
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…