Passer de A1:B1 a C1:L1 et colonne

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

B

Blackdalhia

Guest
bonjour,

j'ai un probleme pour traiter des colonnes par reference : dans le code ci-dessous, je vais chercher des données dans plusieurs fichiers. Ces données sont consolidées dans un fichier : chaque fichier a une colonne associé.
Le probleme est que je n'arrive pas a changer de colonne d'un enregistrement à l'autre, vue que la reference de la colonne est "G" et non pas un chiffre ...

je fait un Range(G5).select pour selectionner la premiere colonne,
mais je ne peux pas faire Range(G+1 5) par exemple...

For I = 1 To 5
fichierlu = .FoundFiles(I)

'nouvelle colonne
col = 7 + (I - 1) * 3

' open the file of site
Workbooks.Open Filename:=fichierlu
NomFichierLu = ActiveWorkbook.Name

'copy and paste the status
Windows(NomFichierLu).Activate
Range("G5:I5").Select
Selection.Copy

Windows(NomFichier).Activate

Range("G5").Select <== comment passer la valeur"colonne" ici ?

Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _ False, Transpose:=False


Next I


merci d'avance pour votre aide !!!!
 
Range("G5").Select
'traitement dans G5
ActiveCell.Offset(0, 1).Select
'traitement dans la même ligne mais colonne suivante (soit H5)

pour boucler :
for i =1 to 5
ActiveCell.Offset(0, i).Select
'traitement
next i


[mode aucun-rapport=ON]
fan de James Ellroy?
[mode aucun-rapport=OFF]
 
Super, ca marche nickel ! merci beaucoup !

Juste une question subsidiaire : si je nomme la region g5:I5 ("test" par exemple), comment y faire reference dans la formule :
Range("G5:I5").Select

==> y a t il un Range("test").Select ?
 
Salut Blackdahlia, Tatiak, le forum,

Juste un grain de sel pour rectifier une petite erreur : si il existe une plage nommée "test", Range("test").Select fonctionne tout à fait.

Tant que j'y suis, on peut aussi travailler en R1C1 en utilisant Cells(ligne, colonne) ce qui donne : Cells(5,7).Select pour Range("G5").Select et ensuite par exemple une boucle du style :
For x=7 To 10
Cells(5,x).Select
etc...
Next x

À plus,

Robert
 
- 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
17
Affichages
1 K
Réponses
11
Affichages
594
Réponses
4
Affichages
707
Retour