Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Questions sans doute idiotes pour beaucoup d'entre vous ...

2 réponses
Avatar
Emmanuel Valette
Je cherche à maitriser les briques de bases qui
permettent d'effectuer les actions suivantes :

"Lire le texte d'une cellule" ---> Par exemple A1 = "Toto"
"Lire un chiffre dans une autre cellule" --> A2 = 5

For i = 1 to (resultat de A2)
"Ouvrir une feuille de nom [A1][A2]"
next i ---> Toto1, Toto2, ...Toto5

----
C'est pas fini :

Quand j'ai :
Range("A7").Select
ActiveCell.FormulaR1C1 = "Texte"
Range("A8").Select

Pourquoi ne puis-je pas remplacer
" Range("A8").Select" par "ActiveCell.Row = ActiveCell.Row+1"

Comment se décaler de la sorte en lignes et en colonnes
d'une valeur lue dans une case ?

2 réponses

Avatar
Daniel
Bonjour.
Pour ta première question, regarde le code suivant qui sélecte
successivement les feuilles

Sub test()
Sheets("toto1").Activate
Ctr = [A2]
Nom = [A1]
For i = 1 To Ctr
Sheets(Nom & i).Select
MsgBox "La feuille " & Nom & i & " est sélectée"
Next i
End Sub

Pour la seconde,
ActiveCell.Row
est une propriété (le numéro de ligne de la cellule) que tu ne peux pas
modifier.
Pour te décaler, utilise Offset :
Activecell.Offset(1,0).Select décale la cellule active d'une ligne vers le
bas (le zéro correspond au décalage en colonnes).
Cordialement.
Daniel
"Emmanuel Valette" a écrit dans le message de news:
42fcadac$0$7801$
Je cherche à maitriser les briques de bases qui
permettent d'effectuer les actions suivantes :

"Lire le texte d'une cellule" ---> Par exemple A1 = "Toto"
"Lire un chiffre dans une autre cellule" --> A2 = 5

For i = 1 to (resultat de A2)
"Ouvrir une feuille de nom [A1][A2]"
next i ---> Toto1, Toto2, ...Toto5

----
C'est pas fini :

Quand j'ai :
Range("A7").Select
ActiveCell.FormulaR1C1 = "Texte"
Range("A8").Select

Pourquoi ne puis-je pas remplacer
" Range("A8").Select" par "ActiveCell.Row = ActiveCell.Row+1"

Comment se décaler de la sorte en lignes et en colonnes
d'une valeur lue dans une case ?




Avatar
Emmanuel Valette
Merci Daniel !

Bonjour.
Pour ta première question, regarde le code suivant qui sélecte
successivement les feuilles

Sub test()
Sheets("toto1").Activate
Ctr = [A2]
Nom = [A1]
For i = 1 To Ctr
Sheets(Nom & i).Select
MsgBox "La feuille " & Nom & i & " est sélectée"
Next i
End Sub

Pour la seconde,
ActiveCell.Row
est une propriété (le numéro de ligne de la cellule) que tu ne peux pas
modifier.
Pour te décaler, utilise Offset :
Activecell.Offset(1,0).Select décale la cellule active d'une ligne vers le
bas (le zéro correspond au décalage en colonnes).
Cordialement.
Daniel
"Emmanuel Valette" a écrit dans le message de news:
42fcadac$0$7801$

Je cherche à maitriser les briques de bases qui
permettent d'effectuer les actions suivantes :

"Lire le texte d'une cellule" ---> Par exemple A1 = "Toto"
"Lire un chiffre dans une autre cellule" --> A2 = 5

For i = 1 to (resultat de A2)
"Ouvrir une feuille de nom [A1][A2]"
next i ---> Toto1, Toto2, ...Toto5

----
C'est pas fini :

Quand j'ai :
Range("A7").Select
ActiveCell.FormulaR1C1 = "Texte"
Range("A8").Select

Pourquoi ne puis-je pas remplacer
" Range("A8").Select" par "ActiveCell.Row = ActiveCell.Row+1"

Comment se décaler de la sorte en lignes et en colonnes
d'une valeur lue dans une case ?