bonjour !
J'ai une fontion et une macro qui me s=E9lectionnent les=20
lignes concern=E9es par le sous total:
Function zoneST(x) As Range
' d=E9finit la variable qui indique la plage concern=E9e par=20
la formule sous.total
' recherche les cellules indiqu=E9es dans la formule sous-
total
Dim f As String
f =3D Range(x).Formula
' extraire la plage en question
Set zoneST =3D Range(Mid(f, InStr(f, ",") + 1, Len(f) -=20
InStr(f, ",") - 1))
End Function
Sub recherche()
' recherche des lignes concern=E9es par les sous totaux=20
diff=E9rents de z=E9ro=20
' ainsi que les lignes s'y rapportant
Application.ScreenUpdating =3D False
'balaye les cellules de la plage
If Cells(6, 8) <> 0 Then _
zoneST("H6").EntireRow.Select
End Sub
je cherche une macro (ou une fonction) permettant de=20
r=E9cup=E9rer dans des variables le num=E9ro des lignes qui sont=20
ainsi s=E9lectionn=E9es. Attention: le nombre de lignes est=20
al=E9atoire. Ces variables me permettront ensuite de nommer=20
les lignes afin d'y effectuer des recherches
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
Philippe
Bonjour,
Utilises un tableau Tab(1000) as long. Dans Sub recherche(), à chaque fois que tu trouves une ligne correspondant à tes critères, stocke son numéro :
Tab(Indice) = Range(x).Row Indice = Indice + 1
Le tableau peut être agrandi si Indice dépasse 1000 : ReDim Preserve t(2000) As Long
ReDim ==> pour redimensionner le tableau (en plus grand ou plus petit) Preserve ==> pour conserver les données déjà stockées
Courage!
-----Message d'origine----- bonjour ! J'ai une fontion et une macro qui me sélectionnent les lignes concernées par le sous total: Function zoneST(x) As Range ' définit la variable qui indique la plage concernée par la formule sous.total ' recherche les cellules indiquées dans la formule sous- total Dim f As String f = Range(x).Formula ' extraire la plage en question Set zoneST = Range(Mid(f, InStr(f, ",") + 1, Len(f) - InStr(f, ",") - 1)) End Function Sub recherche() ' recherche des lignes concernées par les sous totaux différents de zéro ' ainsi que les lignes s'y rapportant Application.ScreenUpdating = False 'balaye les cellules de la plage If Cells(6, 8) <> 0 Then _ zoneST("H6").EntireRow.Select End Sub
je cherche une macro (ou une fonction) permettant de récupérer dans des variables le numéro des lignes qui sont
ainsi sélectionnées. Attention: le nombre de lignes est aléatoire. Ces variables me permettront ensuite de nommer les lignes afin d'y effectuer des recherches .
Bonjour,
Utilises un tableau Tab(1000) as long.
Dans Sub recherche(), à chaque fois que tu trouves une
ligne correspondant à tes critères, stocke son numéro :
Tab(Indice) = Range(x).Row
Indice = Indice + 1
Le tableau peut être agrandi si Indice dépasse 1000 :
ReDim Preserve t(2000) As Long
ReDim ==> pour redimensionner le tableau (en plus grand
ou plus petit)
Preserve ==> pour conserver les données déjà stockées
Courage!
-----Message d'origine-----
bonjour !
J'ai une fontion et une macro qui me sélectionnent les
lignes concernées par le sous total:
Function zoneST(x) As Range
' définit la variable qui indique la plage concernée par
la formule sous.total
' recherche les cellules indiquées dans la formule sous-
total
Dim f As String
f = Range(x).Formula
' extraire la plage en question
Set zoneST = Range(Mid(f, InStr(f, ",") + 1, Len(f) -
InStr(f, ",") - 1))
End Function
Sub recherche()
' recherche des lignes concernées par les sous totaux
différents de zéro
' ainsi que les lignes s'y rapportant
Application.ScreenUpdating = False
'balaye les cellules de la plage
If Cells(6, 8) <> 0 Then _
zoneST("H6").EntireRow.Select
End Sub
je cherche une macro (ou une fonction) permettant de
récupérer dans des variables le numéro des lignes qui
sont
ainsi sélectionnées. Attention: le nombre de lignes est
aléatoire. Ces variables me permettront ensuite de nommer
les lignes afin d'y effectuer des recherches
.
Utilises un tableau Tab(1000) as long. Dans Sub recherche(), à chaque fois que tu trouves une ligne correspondant à tes critères, stocke son numéro :
Tab(Indice) = Range(x).Row Indice = Indice + 1
Le tableau peut être agrandi si Indice dépasse 1000 : ReDim Preserve t(2000) As Long
ReDim ==> pour redimensionner le tableau (en plus grand ou plus petit) Preserve ==> pour conserver les données déjà stockées
Courage!
-----Message d'origine----- bonjour ! J'ai une fontion et une macro qui me sélectionnent les lignes concernées par le sous total: Function zoneST(x) As Range ' définit la variable qui indique la plage concernée par la formule sous.total ' recherche les cellules indiquées dans la formule sous- total Dim f As String f = Range(x).Formula ' extraire la plage en question Set zoneST = Range(Mid(f, InStr(f, ",") + 1, Len(f) - InStr(f, ",") - 1)) End Function Sub recherche() ' recherche des lignes concernées par les sous totaux différents de zéro ' ainsi que les lignes s'y rapportant Application.ScreenUpdating = False 'balaye les cellules de la plage If Cells(6, 8) <> 0 Then _ zoneST("H6").EntireRow.Select End Sub
je cherche une macro (ou une fonction) permettant de récupérer dans des variables le numéro des lignes qui sont
ainsi sélectionnées. Attention: le nombre de lignes est aléatoire. Ces variables me permettront ensuite de nommer les lignes afin d'y effectuer des recherches .
Gadget
Crée une fonction du type : Function Tableau_Lignes() as integer
' Un tableau va être utilisé pour stocker les 'numéros de ligne. Il est public afin que la proc 'appelante puisse l'exploiter.
public Tableau() as integer
' On crée une variable Range pour lire chaque 'ligne, et un compteur
Dim ChaqueLigne as Range, i as integer
'On dimensionne le tableau au nombre de lignes :
redim Tableau(1 to selection.rows.count)
' et voici la boucle principale :
for each ChaqueLigne in Selection.rows i = i + 1 Tableau(i) = ChaqueLigne.Row Next ChaqueLigne
Tableau_Lignes = selection.rows.count
end function
Ensuite, dans ta proc appelante, tu peux récupérer le nombre de lignes :
NombreLignes=Tableau_Lignes
puis tu peux boucler sur le tableau.
Je n'ai pas testé, mais ca doit marcher. En principe.
-- -- Carpe Diem Quam Minimum Credula Postera Bicose Sic Transit Gloria Mundi, et Arx Tarpeia Capitoli Proxima !! "gaston" a écrit dans le message de news:b21701c4375c$bf8a0930$ bonjour ! J'ai une fontion et une macro qui me sélectionnent les lignes concernées par le sous total: Function zoneST(x) As Range ' définit la variable qui indique la plage concernée par la formule sous.total ' recherche les cellules indiquées dans la formule sous- total Dim f As String f = Range(x).Formula ' extraire la plage en question Set zoneST = Range(Mid(f, InStr(f, ",") + 1, Len(f) - InStr(f, ",") - 1)) End Function Sub recherche() ' recherche des lignes concernées par les sous totaux différents de zéro ' ainsi que les lignes s'y rapportant Application.ScreenUpdating = False 'balaye les cellules de la plage If Cells(6, 8) <> 0 Then _ zoneST("H6").EntireRow.Select End Sub
je cherche une macro (ou une fonction) permettant de récupérer dans des variables le numéro des lignes qui sont ainsi sélectionnées. Attention: le nombre de lignes est aléatoire. Ces variables me permettront ensuite de nommer les lignes afin d'y effectuer des recherches
Crée une fonction du type :
Function Tableau_Lignes() as integer
' Un tableau va être utilisé pour stocker les
'numéros de ligne. Il est public afin que la proc
'appelante puisse l'exploiter.
public Tableau() as integer
' On crée une variable Range pour lire chaque
'ligne, et un compteur
Dim ChaqueLigne as Range, i as integer
'On dimensionne le tableau au nombre de lignes :
redim Tableau(1 to selection.rows.count)
' et voici la boucle principale :
for each ChaqueLigne in Selection.rows
i = i + 1
Tableau(i) = ChaqueLigne.Row
Next ChaqueLigne
Tableau_Lignes = selection.rows.count
end function
Ensuite, dans ta proc appelante, tu peux récupérer le nombre de lignes :
NombreLignes=Tableau_Lignes
puis tu peux boucler sur le tableau.
Je n'ai pas testé, mais ca doit marcher. En principe.
--
--
Carpe Diem Quam Minimum Credula Postera
Bicose
Sic Transit Gloria Mundi, et
Arx Tarpeia Capitoli Proxima !!
"gaston" <anonymous@discussions.microsoft.com> a écrit dans le message de
news:b21701c4375c$bf8a0930$a401280a@phx.gbl...
bonjour !
J'ai une fontion et une macro qui me sélectionnent les
lignes concernées par le sous total:
Function zoneST(x) As Range
' définit la variable qui indique la plage concernée par
la formule sous.total
' recherche les cellules indiquées dans la formule sous-
total
Dim f As String
f = Range(x).Formula
' extraire la plage en question
Set zoneST = Range(Mid(f, InStr(f, ",") + 1, Len(f) -
InStr(f, ",") - 1))
End Function
Sub recherche()
' recherche des lignes concernées par les sous totaux
différents de zéro
' ainsi que les lignes s'y rapportant
Application.ScreenUpdating = False
'balaye les cellules de la plage
If Cells(6, 8) <> 0 Then _
zoneST("H6").EntireRow.Select
End Sub
je cherche une macro (ou une fonction) permettant de
récupérer dans des variables le numéro des lignes qui sont
ainsi sélectionnées. Attention: le nombre de lignes est
aléatoire. Ces variables me permettront ensuite de nommer
les lignes afin d'y effectuer des recherches
Crée une fonction du type : Function Tableau_Lignes() as integer
' Un tableau va être utilisé pour stocker les 'numéros de ligne. Il est public afin que la proc 'appelante puisse l'exploiter.
public Tableau() as integer
' On crée une variable Range pour lire chaque 'ligne, et un compteur
Dim ChaqueLigne as Range, i as integer
'On dimensionne le tableau au nombre de lignes :
redim Tableau(1 to selection.rows.count)
' et voici la boucle principale :
for each ChaqueLigne in Selection.rows i = i + 1 Tableau(i) = ChaqueLigne.Row Next ChaqueLigne
Tableau_Lignes = selection.rows.count
end function
Ensuite, dans ta proc appelante, tu peux récupérer le nombre de lignes :
NombreLignes=Tableau_Lignes
puis tu peux boucler sur le tableau.
Je n'ai pas testé, mais ca doit marcher. En principe.
-- -- Carpe Diem Quam Minimum Credula Postera Bicose Sic Transit Gloria Mundi, et Arx Tarpeia Capitoli Proxima !! "gaston" a écrit dans le message de news:b21701c4375c$bf8a0930$ bonjour ! J'ai une fontion et une macro qui me sélectionnent les lignes concernées par le sous total: Function zoneST(x) As Range ' définit la variable qui indique la plage concernée par la formule sous.total ' recherche les cellules indiquées dans la formule sous- total Dim f As String f = Range(x).Formula ' extraire la plage en question Set zoneST = Range(Mid(f, InStr(f, ",") + 1, Len(f) - InStr(f, ",") - 1)) End Function Sub recherche() ' recherche des lignes concernées par les sous totaux différents de zéro ' ainsi que les lignes s'y rapportant Application.ScreenUpdating = False 'balaye les cellules de la plage If Cells(6, 8) <> 0 Then _ zoneST("H6").EntireRow.Select End Sub
je cherche une macro (ou une fonction) permettant de récupérer dans des variables le numéro des lignes qui sont ainsi sélectionnées. Attention: le nombre de lignes est aléatoire. Ces variables me permettront ensuite de nommer les lignes afin d'y effectuer des recherches