A voir également:
- Excel vba range cells
- Vba cells range - Meilleures réponses
- Vba range cells - Meilleures réponses
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Déplacer colonne excel - Guide
- Si ou excel - Guide
- Excel compter cellule couleur sans vba - Guide
6 réponses
Range peut faire référence à une seule cellule ou plusieurs cellules tandis que Cells ne fait référence qu'à une seule cellule
Exemple pour sélectionner la cellule B5
tu peux écrire:
Range.("B5").Select
'ou
Cells(5, 2).Select 'ce qui correspond à la cellule de la 5éme ligne et 2éme colonne
'ou encore plus simplement
[B5].select
Exemple pour sélectionner la cellule B5
tu peux écrire:
Range.("B5").Select
'ou
Cells(5, 2).Select 'ce qui correspond à la cellule de la 5éme ligne et 2éme colonne
'ou encore plus simplement
[B5].select
Salut Mike
[B5].select
les crochets entourant B5 sont l'abréviation de la fonction évaluate et devrait être réservée pour utiliser VBA avec des fonctions excel style macro-complémentaires où worksheetfunction ne fonctionne pas et avec des formules matricielles mais avec les crochets, VBA considère qu'il s'agit d'une formule matricielle
par exemple la fonction nb.jours ouvres(A1;B1)
donnera en vba
lavar=[workday(A1,B1)]
mais tu es obligé d'utiliser evaluate (prise de tête) si un des paramêtres est une variable
nbre = 50
dep = CLng(Range("A1"))
lavar= Evaluate("workday(" & dep & "," & nbre & ")")
donc, ce crochet est mis plutôt par le syndrome du poil dans la main: je l'utilise donc souvent...
mais je n'ai jamais résolu des matricielles avec evaluate...
source
http://xcell05.free.fr/pages/prog/accvba.htm#Evaluate
[B5].select
les crochets entourant B5 sont l'abréviation de la fonction évaluate et devrait être réservée pour utiliser VBA avec des fonctions excel style macro-complémentaires où worksheetfunction ne fonctionne pas et avec des formules matricielles mais avec les crochets, VBA considère qu'il s'agit d'une formule matricielle
par exemple la fonction nb.jours ouvres(A1;B1)
donnera en vba
lavar=[workday(A1,B1)]
mais tu es obligé d'utiliser evaluate (prise de tête) si un des paramêtres est une variable
nbre = 50
dep = CLng(Range("A1"))
lavar= Evaluate("workday(" & dep & "," & nbre & ")")
donc, ce crochet est mis plutôt par le syndrome du poil dans la main: je l'utilise donc souvent...
mais je n'ai jamais résolu des matricielles avec evaluate...
source
http://xcell05.free.fr/pages/prog/accvba.htm#Evaluate
Bonjour,
tu écris:
et il est des fois où ce n'est pas vrai
Je ne crois pas mais si tu as rencontré le cas, dis le ca interressera tt le monde...
généralement, on utilise cells dans des boucles car il est plus élégant que Range
mais les 2 écritures fonctionnent
pour désigner un cellule ou son contenu.
range ou cells désignent toujours une adresse et la propriété value est la propriété par défaut
Il y a des des procédures où on est pratiquement obligé de préciser que l'on travaille sur le contenu et uniquement sur le contenu. on écrit alors range("A1").value
pour te rendre compte écris quelque chose dans A1 puis cette macro
sub test()
mavar=range("A1")
marvar =range("A1").value
end sub
et met un espion sur ma var (débogage-ajouter un espion)
et lance la macro en pas à pas (F8)
tu écris:
et il est des fois où ce n'est pas vrai
Je ne crois pas mais si tu as rencontré le cas, dis le ca interressera tt le monde...
généralement, on utilise cells dans des boucles car il est plus élégant que Range
for i=1 to 100 for j=3 to 10 tavar=cells(i,j) tavar= range(j & ":" & i)
mais les 2 écritures fonctionnent
pour désigner un cellule ou son contenu.
range ou cells désignent toujours une adresse et la propriété value est la propriété par défaut
Il y a des des procédures où on est pratiquement obligé de préciser que l'on travaille sur le contenu et uniquement sur le contenu. on écrit alors range("A1").value
pour te rendre compte écris quelque chose dans A1 puis cette macro
sub test()
mavar=range("A1")
marvar =range("A1").value
end sub
et met un espion sur ma var (débogage-ajouter un espion)
et lance la macro en pas à pas (F8)
Re
sur post 2 lire:
tavar=range(j & i)
au lieu de
tavar= range(j & ":" & i) !!!
excusez moi
sur post 2 lire:
tavar=range(j & i)
au lieu de
tavar= range(j & ":" & i) !!!
excusez moi
Bonjour et merci à vous deux,
Je ne pige pas tout, (j"ai commencé à mettre mon nez dans l'informatique à 55 balais, et ça fait longtemps), mais je grapille dans vos courriers des enseignements intéressants.
Toutefois,
Quelle différence de signification entre Range(j & ":" & i) et Range(j & i) ?
Que signifie CLng(Range(A1))?
Merci.
Je ne pige pas tout, (j"ai commencé à mettre mon nez dans l'informatique à 55 balais, et ça fait longtemps), mais je grapille dans vos courriers des enseignements intéressants.
Toutefois,
Quelle différence de signification entre Range(j & ":" & i) et Range(j & i) ?
Que signifie CLng(Range(A1))?
Merci.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Re,
Emporté par l'élan, il en est de même pour moi
Range.("B5").Select
il convient de supprimer le point après Range
Range("B5").Select
Pour répondre à la pertinente remarque de Michel_m concernant la référence de cellule entre crochet, c’était pour compléter la demande qu’il était possible de rencontrer Range, Cells mais également des raccourcis. Et pour ma part avec l’âge je deviens de plus en plus fainéant et use de ces fonctions.
Par contre comme Michel_m l’a souligné, concernant cette fin de phrase
et il est des fois où ce n'est pas vrai
Pour ma part je serai curieux de savoir, en informatique c’est vrai ou faux mais des fois ou peut être je ne vois pas
Emporté par l'élan, il en est de même pour moi
Range.("B5").Select
il convient de supprimer le point après Range
Range("B5").Select
Pour répondre à la pertinente remarque de Michel_m concernant la référence de cellule entre crochet, c’était pour compléter la demande qu’il était possible de rencontrer Range, Cells mais également des raccourcis. Et pour ma part avec l’âge je deviens de plus en plus fainéant et use de ces fonctions.
Par contre comme Michel_m l’a souligné, concernant cette fin de phrase
et il est des fois où ce n'est pas vrai
Pour ma part je serai curieux de savoir, en informatique c’est vrai ou faux mais des fois ou peut être je ne vois pas
Bonjour,
Quelle différence de signification entre Range(j & ":" & i) et Range(j & i) ?
Range(j & ":" & i) était une erreur de ma part
Que signifie CLng(Range(A1))?
On transforme la date en nombre (un peu comme dans format nombre tu demandais "standard"
j"ai commencé à mettre mon nez dans l'informatique à 55 balais, et ça fait longtemps
je ne suis pas tout jeune non plus et je crois que c'est la m^me chose pour Mike !...
Excel entretient les vieilles neurones ;-)
Quelle différence de signification entre Range(j & ":" & i) et Range(j & i) ?
Range(j & ":" & i) était une erreur de ma part
Que signifie CLng(Range(A1))?
On transforme la date en nombre (un peu comme dans format nombre tu demandais "standard"
j"ai commencé à mettre mon nez dans l'informatique à 55 balais, et ça fait longtemps
je ne suis pas tout jeune non plus et je crois que c'est la m^me chose pour Mike !...
Excel entretient les vieilles neurones ;-)