Nommer onglet avec une variable
Résolu/Fermé
A voir également:
- Nommer onglet avec une variable
- Rouvrir onglet fermé - Guide
- Nommez une application d'appel vidéo ou de visioconférence - Guide
- Onglet privé - Guide
- Onglet (informatique) - Guide
2 réponses
via55
Messages postés
14495
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
7 novembre 2024
2 734
19 mai 2016 à 17:21
19 mai 2016 à 17:21
Bonjour arigold
Ce sera plutôt :
Cdlmnt
Via
Ce sera plutôt :
Set t1 = "test1" principal.Sheets(t1).range("A1")
Cdlmnt
Via
JvDo
Messages postés
1978
Date d'inscription
mercredi 27 juillet 2005
Statut
Membre
Dernière intervention
28 septembre 2020
858
19 mai 2016 à 18:34
19 mai 2016 à 18:34
Bonjour à tous,
essaye ce code :
en résumé : worksheets sans le "s" à la fin, déclarer test1 au même titre que test2, utiliser With...End With et le Activate pour que ça fonctionne.
cordialement
essaye ce code :
Sub toto() Dim principal As Workbook Dim test1 As Worksheet, test2 As Worksheet Set principal = ThisWorkbook Set test1 = principal.Sheets("test1") Set test2 = principal.Sheets("test2") test2.Activate [A1].ClearContents [D8].Select a = principal.Sheets("test1").Range("A1") 'fonctionne With test1 b = .Range("A1") .Range("A1").Copy Destination:=test2.Range("A1") End With test1.Activate Range("A1").Select End Sub
en résumé : worksheets sans le "s" à la fin, déclarer test1 au même titre que test2, utiliser With...End With et le Activate pour que ça fonctionne.
cordialement
19 mai 2016 à 17:51
c'est histoire d'éviter de réécrire sheets("...") à chaque fois.
En tout cas merci pour ton aide Via
19 mai 2016 à 18:09
Au départ tu déclares par exemple 2 noms de feuilles t1="test1" et t2="test2"
Apres dans ta macro soit tu as Sheets(t1).Range("A1") qui fait référence à la feuille test1 ou sheets(t2).range("A1") qui fait reference à la feuille test2
ou bien tu as une instruction avec comme variable par exemple nomf et tu indiques précédement (par exemple en fonction d'une condition) quelle valeur doit prendre nomf
ex
If reponse=1 then nomf=t1 else if reponse=2 then nomf=t2
sheets(nomf).range("A1") etc
Mais tu peux aussi faire référence aux feuilles non pas d'après leurs noms mais d'après leur ordre dans le classeur
ainsi sheets(3).select selectionne la 3eme feuille du classeur
Cdlmnt
Via
20 mai 2016 à 08:51