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

Syntaxe d'utilisation dans macro après nommage d'une colonne

  • Initiateur de la discussion Initiateur de la discussion airvb
  • 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 !

A

airvb

Guest
Bonjour,

But : En cas d'ajout/suppression d'une colonne du tableau, les macros ne sont pas perturbées.


Avant :

rf.Range("J" & lignerf) = sir.Range("B" & lignesir) ' info to

Si j'ajoute/retire une colonne ds les feuilles rf et sir ... patatra ça tombe 🙁


J'ai donc nommé "info_to" la colonne J de ma feuille rf. ( =rf!$J:$J )

rf.Range("info_to" & lignerf) = sir.Range("B" & lignesir) ' info to


Mais la j'ai droit à une erreur 1004

Une piste ?

Merci
 
Re : Syntaxe d'utilisation dans macro après nommage d'une colonne

Bonjour à tous

airvb

Joindre un fichier Excel exemple, peut-être ?

Voilà...

J'ai du adapter les colonnes / noms mais le principe est le même.


Merci
 

Pièces jointes

Re : Syntaxe d'utilisation dans macro après nommage d'une colonne

Bonjour airvb

Salut Staple

Remplacer
Code:
rf.Range("vers" & ligne) = sir.Range("C" & lignesir)

par

Code:
     rf.Cells(ligne, Range("vers").Column) = sir.Range("C" & lignesir)
 
Re : Syntaxe d'utilisation dans macro après nommage d'une colonne

Re____________________________EDITION: Bonjour pierrejean

Personnellement, j'utiliserai plutôt un filtre avancé en VBA
(NB: Le code VBA doit être dans un module standard et pas dans ThisWorkbook comme c'est la cas dans ta PJ)
Code:
Sub recup()
Dim rf As Worksheet, sir As Worksheet
Set rf = Worksheets("rf")
Set sir = Worksheets("sir")
With rf.Range("C1:Z200")
    .ClearContents
    .Interior.ColorIndex = xlNone
    .ClearComments ' on enléve les commentaires des cellules
End With
sir.Range("B1:F23").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=rf.Range("A1:B2"), CopyToRange:=rf.Range("E1"), Unique:=False
End Sub
Résultat obtenu avec ma macro
(j'ai modifié les cellules A1:B2 qui deviennnent la zone de critère du filtre)
 
Re : Syntaxe d'utilisation dans macro après nommage d'une colonne

Effectivement c'est une piste d'amélioration notable.
Le fichier présenté ayant été simplifié je vais voir si je peux adapter mais cela semble prometteur.

Merci pour l'idée.


Bon we
 
- 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.
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…