Pour pouvoir sélectionner une cellule sur une feuille cette feuille doit être la feuille active.
La meilleurs syntaxe pour ce type de ligne de code : Cette syntaxe est valide que ton code soit écrit dans un module feuille ou un module standard :
'----------------------------- With Sheets("Travail") .select .Range("A1").Select End With '-----------------------------
N.B- Il est possible de travailler avec un Range sans devoir continuellement le sélectionner !
"Infogroup" a écrit dans le message de groupe de discussion : #H4w5$ Bonjour à tous,
Je ne sais pas pourquoi l'instruction ci-dessous n'est pas correcte : Sheets("Travail").Range("A1").Select
Si j'écris : Sheets("Travail").Select Range("A1").Select il n'y a aucun problème
Quelle serait l'écriture correcte ?
Merci par avance
Cdl
Infogroup
Jacky
Bonsoir,
La méthode "Select" nécessite que la feuille en question soit la feuille active Si le feuille "Travail' est la feuille active, le code fonctionne, dans le cas contraire xl renvoie l'erreur 1004 il y a aussi '-------- With Sheets("Travail") .Activate .Range("A1").Select End With '----------- Cela dit "Select" est souvent inutile, on peut très bien écrire dans une cellule ou plage de cellule sans que la feuille soit active. '------------ ActiveSheet.Range("A1").Copy Sheets("Travail").Range("c1") '------------
Ceci copy de la feuille active la cellule A1 vers la feuille travail en C1 .-- Salutations JJ
"Infogroup" a écrit dans le message de news: %23H4w5$
Bonjour à tous,
Je ne sais pas pourquoi l'instruction ci-dessous n'est pas correcte : Sheets("Travail").Range("A1").Select
Si j'écris : Sheets("Travail").Select Range("A1").Select il n'y a aucun problème
Quelle serait l'écriture correcte ?
Merci par avance
Cdl
Infogroup
Bonsoir,
La méthode "Select" nécessite que la feuille en question soit la feuille
active
Si le feuille "Travail' est la feuille active, le code fonctionne, dans le
cas contraire xl renvoie l'erreur 1004
il y a aussi
'--------
With Sheets("Travail")
.Activate
.Range("A1").Select
End With
'-----------
Cela dit "Select" est souvent inutile, on peut très bien écrire dans une
cellule ou plage de cellule sans que la feuille soit active.
'------------
ActiveSheet.Range("A1").Copy Sheets("Travail").Range("c1")
'------------
Ceci copy de la feuille active la cellule A1 vers la feuille travail en C1
.--
Salutations
JJ
"Infogroup" <Infogroup70@orange.fr> a écrit dans le message de news:
%23H4w5$hOKHA.504@TK2MSFTNGP06.phx.gbl...
Bonjour à tous,
Je ne sais pas pourquoi l'instruction ci-dessous n'est pas correcte :
Sheets("Travail").Range("A1").Select
Si j'écris :
Sheets("Travail").Select
Range("A1").Select
il n'y a aucun problème
La méthode "Select" nécessite que la feuille en question soit la feuille active Si le feuille "Travail' est la feuille active, le code fonctionne, dans le cas contraire xl renvoie l'erreur 1004 il y a aussi '-------- With Sheets("Travail") .Activate .Range("A1").Select End With '----------- Cela dit "Select" est souvent inutile, on peut très bien écrire dans une cellule ou plage de cellule sans que la feuille soit active. '------------ ActiveSheet.Range("A1").Copy Sheets("Travail").Range("c1") '------------
Ceci copy de la feuille active la cellule A1 vers la feuille travail en C1 .-- Salutations JJ
"Infogroup" a écrit dans le message de news: %23H4w5$
Bonjour à tous,
Je ne sais pas pourquoi l'instruction ci-dessous n'est pas correcte : Sheets("Travail").Range("A1").Select
Si j'écris : Sheets("Travail").Select Range("A1").Select il n'y a aucun problème
Quelle serait l'écriture correcte ?
Merci par avance
Cdl
Infogroup
FS
Par convention probablement, Select ne peut faire qu'une chose à la fois. L'aide propose d'activer la feuille avant de sélectionner une plage :
Sheets("Travail").Activate Range("A1").Select
Pour n'avoir qu'une seule instruction, on peut passer par Goto :