Bonjour,
Imaginons que sur une ligne de vba ,j'ai cette s=E9lection :
Range("D13").Select
et que je veuille continuer sur les lignes suivantes =E0 poursuivre
cette s=E9lection, la ligne suivante annulerait la s=E9lection
pr=E9c=E9dente :
Range("D14").Select
Alors comment faire ?... Le probl=E8me est que je ne peux savoir =E0
l'avance qu'elle partie doit =EAtre s=E9lectionn=E9e, cela d=E9pend de
plusieurs facteurs au sein d'une boucle. Deuxi=E8me chose, le nombre de
cellules =E0 s=E9lectionner peut =EAtre assez important...
Merci beaucoup !
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
michdenis
Bonjour,
Tu peux utiliser ceci :
Sub test() For a = 1 To 10 Range("D13").Resize(a).Select Next End Sub
Pour sélectionner les lignes entires
Sub test() For a = 1 To 10 Range("A5").Resize(a).EntireRow.Select Next End Sub
Si tu connais déjà avant l'entrée en boucle le nombre de ligne à sélectionner, tu peux utiliser seulement ceci, nul besoin d'employer une boucle
A = 10 Range("A5").Resize(a).EntireRow.Select
"Versatile" a écrit dans le message de news:
Bonjour, Imaginons que sur une ligne de vba ,j'ai cette sélection : Range("D13").Select et que je veuille continuer sur les lignes suivantes à poursuivre cette sélection, la ligne suivante annulerait la sélection précédente : Range("D14").Select Alors comment faire ?... Le problème est que je ne peux savoir à l'avance qu'elle partie doit être sélectionnée, cela dépend de plusieurs facteurs au sein d'une boucle. Deuxième chose, le nombre de cellules à sélectionner peut être assez important... Merci beaucoup !
Bonjour,
Tu peux utiliser ceci :
Sub test()
For a = 1 To 10
Range("D13").Resize(a).Select
Next
End Sub
Pour sélectionner les lignes entires
Sub test()
For a = 1 To 10
Range("A5").Resize(a).EntireRow.Select
Next
End Sub
Si tu connais déjà avant l'entrée en boucle le nombre
de ligne à sélectionner, tu peux utiliser seulement ceci,
nul besoin d'employer une boucle
A = 10
Range("A5").Resize(a).EntireRow.Select
"Versatile" <courrier.perso@gmail.com> a écrit dans le message de news:
37dd29ed-ac2b-4a6a-869b-09297a8fcbd0@d19g2000yqf.googlegroups.com...
Bonjour,
Imaginons que sur une ligne de vba ,j'ai cette sélection :
Range("D13").Select
et que je veuille continuer sur les lignes suivantes à poursuivre
cette sélection, la ligne suivante annulerait la sélection
précédente :
Range("D14").Select
Alors comment faire ?... Le problème est que je ne peux savoir à
l'avance qu'elle partie doit être sélectionnée, cela dépend de
plusieurs facteurs au sein d'une boucle. Deuxième chose, le nombre de
cellules à sélectionner peut être assez important...
Merci beaucoup !
Sub test() For a = 1 To 10 Range("D13").Resize(a).Select Next End Sub
Pour sélectionner les lignes entires
Sub test() For a = 1 To 10 Range("A5").Resize(a).EntireRow.Select Next End Sub
Si tu connais déjà avant l'entrée en boucle le nombre de ligne à sélectionner, tu peux utiliser seulement ceci, nul besoin d'employer une boucle
A = 10 Range("A5").Resize(a).EntireRow.Select
"Versatile" a écrit dans le message de news:
Bonjour, Imaginons que sur une ligne de vba ,j'ai cette sélection : Range("D13").Select et que je veuille continuer sur les lignes suivantes à poursuivre cette sélection, la ligne suivante annulerait la sélection précédente : Range("D14").Select Alors comment faire ?... Le problème est que je ne peux savoir à l'avance qu'elle partie doit être sélectionnée, cela dépend de plusieurs facteurs au sein d'une boucle. Deuxième chose, le nombre de cellules à sélectionner peut être assez important... Merci beaucoup !
Versatile
Merci beaucoup pour toutes ces infos. J'ai retravaillé ma macro et maintenant je réussis à avoir la chaîn e au format texte à sélectionner. Malheureusement, cela me donne parfois des plages trop longues, exemple :
La méthose : Range(LaPlage).Select ne marche pas car elle semble trop longue... Comment faire ?
Merci beaucoup pour toutes ces infos.
J'ai retravaillé ma macro et maintenant je réussis à avoir la chaîn e
au format texte à sélectionner. Malheureusement, cela me donne parfois
des plages trop longues, exemple :
Merci beaucoup pour toutes ces infos. J'ai retravaillé ma macro et maintenant je réussis à avoir la chaîn e au format texte à sélectionner. Malheureusement, cela me donne parfois des plages trop longues, exemple :
'Une boucle sur chacune des plages de cellules que tu as définis 'L'option "EntireRow" seulement si besoin
For Each elt In Arr Range(elt).EntireRow.Select 'Le traitement avec la plage de cellules Next
End Sub '-------------------------------------
"Versatile" a écrit dans le message de news:
Merci beaucoup pour toutes ces infos. J'ai retravaillé ma macro et maintenant je réussis à avoir la chaîne au format texte à sélectionner. Malheureusement, cela me donne parfois des plages trop longues, exemple :
'Une boucle sur chacune des plages de cellules que tu as définis
'L'option "EntireRow" seulement si besoin
For Each elt In Arr
Range(elt).EntireRow.Select
'Le traitement avec la plage de cellules
Next
End Sub
'-------------------------------------
"Versatile" <courrier.perso@gmail.com> a écrit dans le message de news:
6c478c26-e5ab-485d-8e32-7dc31428be42@a34g2000yqn.googlegroups.com...
Merci beaucoup pour toutes ces infos.
J'ai retravaillé ma macro et maintenant je réussis à avoir la chaîne
au format texte à sélectionner. Malheureusement, cela me donne parfois
des plages trop longues, exemple :
'Une boucle sur chacune des plages de cellules que tu as définis 'L'option "EntireRow" seulement si besoin
For Each elt In Arr Range(elt).EntireRow.Select 'Le traitement avec la plage de cellules Next
End Sub '-------------------------------------
"Versatile" a écrit dans le message de news:
Merci beaucoup pour toutes ces infos. J'ai retravaillé ma macro et maintenant je réussis à avoir la chaîne au format texte à sélectionner. Malheureusement, cela me donne parfois des plages trop longues, exemple :
"Versatile" a écrit dans le message de news: Merci beaucoup pour toutes ces infos. J'ai retravaillé ma macro et maintenant je réussis à avoir la chaîne au format texte à sélectionner. Malheureusement, cela me donne parfois des plages trop longues, exemple :
"Versatile" <courrier.perso@gmail.com> a écrit dans le message de
news:6c478c26-e5ab-485d-8e32-7dc31428be42@a34g2000yqn.googlegroups.com...
Merci beaucoup pour toutes ces infos.
J'ai retravaillé ma macro et maintenant je réussis à avoir la chaîne
au format texte à sélectionner. Malheureusement, cela me donne parfois
des plages trop longues, exemple :
"Versatile" a écrit dans le message de news: Merci beaucoup pour toutes ces infos. J'ai retravaillé ma macro et maintenant je réussis à avoir la chaîne au format texte à sélectionner. Malheureusement, cela me donne parfois des plages trop longues, exemple :
La méthose : Range(LaPlage).Select ne marche pas car elle semble trop longue... Comment faire ?
LSteph
Bonjour,
1-Si tes plages sont multiples et variées mais qu'il y a régulièremen t des plages type tu peux définir des noms. comme pris dans ton exemple ainsi D13:D16,D18:D22,D24:D29,D32:D33,D35:D36,D38:D40,D42,D44:D45,D47:D49 pourrait aussi bien s'appeler "toto" ou "plagetruc"
[toto].select te permettra de l'atteindre mais en général Select est tout à fait inutile surtout s'il est suivi de suite apres d'une instruction Selection.copy ou tout autre Selection.fairececi ou selection.fairecela
autant ecrire [maplage].faitledirect
2-S'il n'y a pas de plages type mais différents cas de figure qui font que dans une même plage à considérer certaines cellules n'ont pas à être traitées tantôt lesunes tantôt d'autres.
Alors il faut toujours désigner ta plage globale et être capable d'identifier celles qui minoritairement ont cette fameuse bonne raison d'être écartées.
exemple
for each c in [maplage].cells if c>14 then '...onfait ceci cela
ou encore
Select case c
Case "x","y", "z" 'on fait rien Case "a","b" 'on fait ceci Case else 'on fait cela End select
ou même que ce soit par if ou select case choisir celles à écarter
.. D27,D25,D..
Bref tout dépend de l'objectif et de ce qui coute le moindre effort.
Cordialement.
-- LSteph
On 3 mai, 17:04, Versatile wrote:
Bonjour, Imaginons que sur une ligne de vba ,j'ai cette sélection : Range("D13").Select et que je veuille continuer sur les lignes suivantes à poursuivre cette sélection, la ligne suivante annulerait la sélection précédente : Range("D14").Select Alors comment faire ?... Le problème est que je ne peux savoir à l'avance qu'elle partie doit être sélectionnée, cela dépend de plusieurs facteurs au sein d'une boucle. Deuxième chose, le nombre de cellules à sélectionner peut être assez important... Merci beaucoup !
Bonjour,
1-Si tes plages sont multiples et variées mais qu'il y a régulièremen t
des plages type
tu peux définir des noms.
comme pris dans ton exemple
ainsi
D13:D16,D18:D22,D24:D29,D32:D33,D35:D36,D38:D40,D42,D44:D45,D47:D49
pourrait aussi bien s'appeler "toto" ou "plagetruc"
[toto].select te permettra de l'atteindre mais en général
Select est tout à fait inutile surtout s'il est suivi de suite apres
d'une instruction Selection.copy ou tout autre
Selection.fairececi ou selection.fairecela
autant ecrire [maplage].faitledirect
2-S'il n'y a pas de plages type mais différents cas de figure qui font
que dans une même plage à considérer certaines cellules n'ont pas à
être traitées tantôt lesunes tantôt d'autres.
Alors il faut toujours désigner ta plage globale et être capable
d'identifier celles qui minoritairement ont cette fameuse bonne raison
d'être écartées.
exemple
for each c in [maplage].cells
if c>14 then
'...onfait ceci cela
ou encore
Select case c
Case "x","y", "z"
'on fait rien
Case "a","b"
'on fait ceci
Case else
'on fait cela
End select
ou même que ce soit par if ou select case choisir celles à écarter
.. D27,D25,D..
Bref tout dépend de l'objectif et de ce qui coute le moindre effort.
Cordialement.
--
LSteph
On 3 mai, 17:04, Versatile <courrier.pe...@gmail.com> wrote:
Bonjour,
Imaginons que sur une ligne de vba ,j'ai cette sélection :
Range("D13").Select
et que je veuille continuer sur les lignes suivantes à poursuivre
cette sélection, la ligne suivante annulerait la sélection
précédente :
Range("D14").Select
Alors comment faire ?... Le problème est que je ne peux savoir à
l'avance qu'elle partie doit être sélectionnée, cela dépend de
plusieurs facteurs au sein d'une boucle. Deuxième chose, le nombre de
cellules à sélectionner peut être assez important...
Merci beaucoup !
1-Si tes plages sont multiples et variées mais qu'il y a régulièremen t des plages type tu peux définir des noms. comme pris dans ton exemple ainsi D13:D16,D18:D22,D24:D29,D32:D33,D35:D36,D38:D40,D42,D44:D45,D47:D49 pourrait aussi bien s'appeler "toto" ou "plagetruc"
[toto].select te permettra de l'atteindre mais en général Select est tout à fait inutile surtout s'il est suivi de suite apres d'une instruction Selection.copy ou tout autre Selection.fairececi ou selection.fairecela
autant ecrire [maplage].faitledirect
2-S'il n'y a pas de plages type mais différents cas de figure qui font que dans une même plage à considérer certaines cellules n'ont pas à être traitées tantôt lesunes tantôt d'autres.
Alors il faut toujours désigner ta plage globale et être capable d'identifier celles qui minoritairement ont cette fameuse bonne raison d'être écartées.
exemple
for each c in [maplage].cells if c>14 then '...onfait ceci cela
ou encore
Select case c
Case "x","y", "z" 'on fait rien Case "a","b" 'on fait ceci Case else 'on fait cela End select
ou même que ce soit par if ou select case choisir celles à écarter
.. D27,D25,D..
Bref tout dépend de l'objectif et de ce qui coute le moindre effort.
Cordialement.
-- LSteph
On 3 mai, 17:04, Versatile wrote:
Bonjour, Imaginons que sur une ligne de vba ,j'ai cette sélection : Range("D13").Select et que je veuille continuer sur les lignes suivantes à poursuivre cette sélection, la ligne suivante annulerait la sélection précédente : Range("D14").Select Alors comment faire ?... Le problème est que je ne peux savoir à l'avance qu'elle partie doit être sélectionnée, cela dépend de plusieurs facteurs au sein d'une boucle. Deuxième chose, le nombre de cellules à sélectionner peut être assez important... Merci beaucoup !