Comment définir l'adresse d'une cellule en fonction d'une variable

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

Djoug75

XLDnaute Nouveau
Bonjour à tous,

L'objectif de ma macro est de créer une base de données dans un fichier excel B en copiant collant plusieurs fois d'affilée un même tableau de chiffres qui se trouve dans un fichier A. Ce tableau de chiffres est fonction de 2 variables X et Y.

Pour ce faire, j'ai utilisé une boucle, mais j'ai un problème au moment de définir la cellule à partir de laquelle je voudrais coller la selection dans le fichier B. Pour essayer d'être plus clair, je voudrais que la première fois, la selection soit collée en cellule d'adresse "colonne A, ligne 3+15*(Y-1)", la deuxième fois la même formule d'adresse avec Y = 2, puis 3...

Je débute en VBA, j'ai beau cherché sur internet, je ne trouve pas comment faire. Je vous colle la macro.

Sub SSS()

Dim X As Integer
For X = 1 To 2
Windows("Fichier A.xls").Activate
Sheets("ZZZ").Select
Range("F5").Select
ActiveCell.FormulaR1C1 = X
Range("C12:BN26").Select
Selection.Copy
Dim Y As Integer
For Y = 1 To 2
Windows("Fichier A.xls").Activate
Sheets("ZZZ").Select
Range("F3").Select
ActiveCell.FormulaR1C1 = Y
Windows("Fichier B.xls").Activate
Sheets(X).Select
Cellule d'adresse(colonne A, ligne 3 + 15 * (Y - 1)).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Next
Next
End Sub

Merci beaucoup d'avance.
 
Re : Comment définir l'adresse d'une cellule en fonction d'une variable

bonjour Djoug75

A tester

Code:
Sub SSS()
 
Dim X As Integer
For X = 1 To 2
Windows("Fichier A.xls").Activate
Sheets("ZZZ").Range("F5").FormulaR1C1 = X
Range("C12:BN26").Copy
Dim Y As Integer
Windows("Fichier A.xls").Activate
For Y = 1 To 2
Sheets("ZZZ").Range("F3").FormulaR1C1 = Y
Windows("Fichier B.xls").Activate
Sheets(X).Range("A" & 3+15*(Y-1)).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Next
Next
End Sub
[COLOR=#ff0000]'Cellule d'adresse(colonne A, ligne 3 + 15 * (Y - 1)).Select[/COLOR]
 
Re : Comment définir l'adresse d'une cellule en fonction d'une variable

Bonjour Mromain, bonjour Pierrejean,

Merci pour la réponse rapide.

Mromain, la macro ne tourne pas avec votre suggestion (ou je ne suis pas capable de faire les ajustements nécessaires^^).

Pierrejean, ça marche impeccablement avec votre suggestion.

Excellente journée à vous 2
 
- 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

Discussions similaires

Réponses
4
Affichages
580
Réponses
10
Affichages
852
Retour