Re bonsoir à tous
Dans cette macro ci-dessous, j'aimerais ne pas prendre en compte les mots
"Utilisateur" et Administrateur"
J'ai vu sur excelabo quelque chose comme ca (>>>Les listes>>>Listbox
alimenté avec une extraction sans doublon)
Merci de l'aide que vous pourez m'apportée.
Salutations
David
La procédure (pas de moi, bien sur !!!)
Sub Liste_Sans_Doublons()
'Permet de lister et trier par ordre alhabétique dans la
'feuille "Relevé Général" le matériel dans la feuille sélectionnée en [O2]
Dim CollObject As New Collection
Dim Counter As Long
Dim FirstDataRow As Long
Dim LastRow As Long
Dim NameOfSheet As String
Dim SearchColumn As String
Dim SearchRange As Range
Dim SearchData As Variant
Dim UniqueColumn As Long
Dim UniqueData() As Variant
'paramètres de travail :
With ActiveSheet
Range("B6:B75").Select
Selection.ClearContents
Range("B6").Select
NameOfSheet = [O3]
End With
SearchColumn = "C"
FirstDataRow = 4 ' s'il y a une ligne d'entête
On Error Resume Next
With Worksheets(NameOfSheet)
UniqueColumn = .Columns(SearchColumn).Column
LastRow = .Cells(65536, UniqueColumn).End(xlUp).Row
Set SearchRange = .Range(.Cells(FirstDataRow, UniqueColumn), _
.Cells(LastRow, UniqueColumn))
SearchData = SearchRange.Value
For Counter = FirstDataRow To LastRow
CollObject.Add Item:=SearchData(Counter - FirstDataRow + 1, 1), _
key:=CStr(SearchData(Counter - FirstDataRow + 1, 1))
Next Counter
End With
ReDim UniqueData(1 To CollObject.Count, 1 To 1)
For Counter = 1 To CollObject.Count
UniqueData(Counter, 1) = CollObject(Counter)
Next Counter
'pour renvoyer le résultat dans une feuille de calcul
Sheets("Relevé Général").Select
Range("B6").Resize(UBound(UniqueData, 1), 1).Value = UniqueData
Range("B6:B75").Select
Selection.Sort Key1:=Range("B6"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom
Range("O3").Select
End Sub
-- direction-ternoise@(supprimerceci)wanadoo.fr
Re bonsoir à tous
Dans cette macro ci-dessous, j'aimerais ne pas prendre en compte les mots
"Utilisateur" et Administrateur"
J'ai vu sur excelabo quelque chose comme ca (>>>Les listes>>>Listbox
alimenté avec une extraction sans doublon)
Merci de l'aide que vous pourez m'apportée.
Salutations
David
La procédure (pas de moi, bien sur !!!)
Sub Liste_Sans_Doublons()
'Permet de lister et trier par ordre alhabétique dans la
'feuille "Relevé Général" le matériel dans la feuille sélectionnée en [O2]
Dim CollObject As New Collection
Dim Counter As Long
Dim FirstDataRow As Long
Dim LastRow As Long
Dim NameOfSheet As String
Dim SearchColumn As String
Dim SearchRange As Range
Dim SearchData As Variant
Dim UniqueColumn As Long
Dim UniqueData() As Variant
'paramètres de travail :
With ActiveSheet
Range("B6:B75").Select
Selection.ClearContents
Range("B6").Select
NameOfSheet = [O3]
End With
SearchColumn = "C"
FirstDataRow = 4 ' s'il y a une ligne d'entête
On Error Resume Next
With Worksheets(NameOfSheet)
UniqueColumn = .Columns(SearchColumn).Column
LastRow = .Cells(65536, UniqueColumn).End(xlUp).Row
Set SearchRange = .Range(.Cells(FirstDataRow, UniqueColumn), _
.Cells(LastRow, UniqueColumn))
SearchData = SearchRange.Value
For Counter = FirstDataRow To LastRow
CollObject.Add Item:=SearchData(Counter - FirstDataRow + 1, 1), _
key:=CStr(SearchData(Counter - FirstDataRow + 1, 1))
Next Counter
End With
ReDim UniqueData(1 To CollObject.Count, 1 To 1)
For Counter = 1 To CollObject.Count
UniqueData(Counter, 1) = CollObject(Counter)
Next Counter
'pour renvoyer le résultat dans une feuille de calcul
Sheets("Relevé Général").Select
Range("B6").Resize(UBound(UniqueData, 1), 1).Value = UniqueData
Range("B6:B75").Select
Selection.Sort Key1:=Range("B6"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom
Range("O3").Select
End Sub
-- direction-ternoise@(supprimerceci)wanadoo.fr
Re bonsoir à tous
Dans cette macro ci-dessous, j'aimerais ne pas prendre en compte les mots
"Utilisateur" et Administrateur"
J'ai vu sur excelabo quelque chose comme ca (>>>Les listes>>>Listbox
alimenté avec une extraction sans doublon)
Merci de l'aide que vous pourez m'apportée.
Salutations
David
La procédure (pas de moi, bien sur !!!)
Sub Liste_Sans_Doublons()
'Permet de lister et trier par ordre alhabétique dans la
'feuille "Relevé Général" le matériel dans la feuille sélectionnée en [O2]
Dim CollObject As New Collection
Dim Counter As Long
Dim FirstDataRow As Long
Dim LastRow As Long
Dim NameOfSheet As String
Dim SearchColumn As String
Dim SearchRange As Range
Dim SearchData As Variant
Dim UniqueColumn As Long
Dim UniqueData() As Variant
'paramètres de travail :
With ActiveSheet
Range("B6:B75").Select
Selection.ClearContents
Range("B6").Select
NameOfSheet = [O3]
End With
SearchColumn = "C"
FirstDataRow = 4 ' s'il y a une ligne d'entête
On Error Resume Next
With Worksheets(NameOfSheet)
UniqueColumn = .Columns(SearchColumn).Column
LastRow = .Cells(65536, UniqueColumn).End(xlUp).Row
Set SearchRange = .Range(.Cells(FirstDataRow, UniqueColumn), _
.Cells(LastRow, UniqueColumn))
SearchData = SearchRange.Value
For Counter = FirstDataRow To LastRow
CollObject.Add Item:=SearchData(Counter - FirstDataRow + 1, 1), _
key:=CStr(SearchData(Counter - FirstDataRow + 1, 1))
Next Counter
End With
ReDim UniqueData(1 To CollObject.Count, 1 To 1)
For Counter = 1 To CollObject.Count
UniqueData(Counter, 1) = CollObject(Counter)
Next Counter
'pour renvoyer le résultat dans une feuille de calcul
Sheets("Relevé Général").Select
Range("B6").Resize(UBound(UniqueData, 1), 1).Value = UniqueData
Range("B6:B75").Select
Selection.Sort Key1:=Range("B6"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom
Range("O3").Select
End Sub
-- direction-ternoise@(supprimerceci)wanadoo.fr
Bonjour,
Peut-être une piste, sans garantie car non essayé :
For Counter = 1 To CollObject.Count
If CollObjet(Counter)<>"Utilisateur" And
CollObject(Counter)<>"Administrateur" Then
UniqueData(Counter, 1) = CollObject(Counter)
End If
Next Counter
Les enregistrements vides seront éliminés par le tri effectué après.
Cordialement.
"David T." <direction-ternoise@(enlever)wanadoo.fr> a écrit dans le
message
de news: um2AuNk$Re bonsoir à tous
Dans cette macro ci-dessous, j'aimerais ne pas prendre en compte les
mots
"Utilisateur" et Administrateur"
J'ai vu sur excelabo quelque chose comme ca (>>>Les listes>>>Listbox
alimenté avec une extraction sans doublon)
Merci de l'aide que vous pourez m'apportée.
Salutations
David
La procédure (pas de moi, bien sur !!!)
Sub Liste_Sans_Doublons()
'Permet de lister et trier par ordre alhabétique dans la
'feuille "Relevé Général" le matériel dans la feuille sélectionnée en
[O2]
Dim CollObject As New Collection
Dim Counter As Long
Dim FirstDataRow As Long
Dim LastRow As Long
Dim NameOfSheet As String
Dim SearchColumn As String
Dim SearchRange As Range
Dim SearchData As Variant
Dim UniqueColumn As Long
Dim UniqueData() As Variant
'paramètres de travail :
With ActiveSheet
Range("B6:B75").Select
Selection.ClearContents
Range("B6").Select
NameOfSheet = [O3]
End With
SearchColumn = "C"
FirstDataRow = 4 ' s'il y a une ligne d'entête
On Error Resume Next
With Worksheets(NameOfSheet)
UniqueColumn = .Columns(SearchColumn).Column
LastRow = .Cells(65536, UniqueColumn).End(xlUp).Row
Set SearchRange = .Range(.Cells(FirstDataRow, UniqueColumn), _
.Cells(LastRow, UniqueColumn))
SearchData = SearchRange.Value
For Counter = FirstDataRow To LastRow
CollObject.Add Item:=SearchData(Counter - FirstDataRow + 1, 1), _
key:=CStr(SearchData(Counter - FirstDataRow + 1, 1))
Next Counter
End With
ReDim UniqueData(1 To CollObject.Count, 1 To 1)
For Counter = 1 To CollObject.Count
UniqueData(Counter, 1) = CollObject(Counter)
Next Counter
'pour renvoyer le résultat dans une feuille de calcul
Sheets("Relevé Général").Select
Range("B6").Resize(UBound(UniqueData, 1), 1).Value = UniqueData
Range("B6:B75").Select
Selection.Sort Key1:=Range("B6"), Order1:=xlAscending, Header:=xlGuess,
_
OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom
Range("O3").Select
End Sub
-- direction-ternoise@(supprimerceci)wanadoo.fr
Bonjour,
Peut-être une piste, sans garantie car non essayé :
For Counter = 1 To CollObject.Count
If CollObjet(Counter)<>"Utilisateur" And
CollObject(Counter)<>"Administrateur" Then
UniqueData(Counter, 1) = CollObject(Counter)
End If
Next Counter
Les enregistrements vides seront éliminés par le tri effectué après.
Cordialement.
"David T." <direction-ternoise@(enlever)wanadoo.fr> a écrit dans le
message
de news: um2AuNk$DHA.2632@TK2MSFTNGP12.phx.gbl...
Re bonsoir à tous
Dans cette macro ci-dessous, j'aimerais ne pas prendre en compte les
mots
"Utilisateur" et Administrateur"
J'ai vu sur excelabo quelque chose comme ca (>>>Les listes>>>Listbox
alimenté avec une extraction sans doublon)
Merci de l'aide que vous pourez m'apportée.
Salutations
David
La procédure (pas de moi, bien sur !!!)
Sub Liste_Sans_Doublons()
'Permet de lister et trier par ordre alhabétique dans la
'feuille "Relevé Général" le matériel dans la feuille sélectionnée en
[O2]
Dim CollObject As New Collection
Dim Counter As Long
Dim FirstDataRow As Long
Dim LastRow As Long
Dim NameOfSheet As String
Dim SearchColumn As String
Dim SearchRange As Range
Dim SearchData As Variant
Dim UniqueColumn As Long
Dim UniqueData() As Variant
'paramètres de travail :
With ActiveSheet
Range("B6:B75").Select
Selection.ClearContents
Range("B6").Select
NameOfSheet = [O3]
End With
SearchColumn = "C"
FirstDataRow = 4 ' s'il y a une ligne d'entête
On Error Resume Next
With Worksheets(NameOfSheet)
UniqueColumn = .Columns(SearchColumn).Column
LastRow = .Cells(65536, UniqueColumn).End(xlUp).Row
Set SearchRange = .Range(.Cells(FirstDataRow, UniqueColumn), _
.Cells(LastRow, UniqueColumn))
SearchData = SearchRange.Value
For Counter = FirstDataRow To LastRow
CollObject.Add Item:=SearchData(Counter - FirstDataRow + 1, 1), _
key:=CStr(SearchData(Counter - FirstDataRow + 1, 1))
Next Counter
End With
ReDim UniqueData(1 To CollObject.Count, 1 To 1)
For Counter = 1 To CollObject.Count
UniqueData(Counter, 1) = CollObject(Counter)
Next Counter
'pour renvoyer le résultat dans une feuille de calcul
Sheets("Relevé Général").Select
Range("B6").Resize(UBound(UniqueData, 1), 1).Value = UniqueData
Range("B6:B75").Select
Selection.Sort Key1:=Range("B6"), Order1:=xlAscending, Header:=xlGuess,
_
OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom
Range("O3").Select
End Sub
-- direction-ternoise@(supprimerceci)wanadoo.fr
Bonjour,
Peut-être une piste, sans garantie car non essayé :
For Counter = 1 To CollObject.Count
If CollObjet(Counter)<>"Utilisateur" And
CollObject(Counter)<>"Administrateur" Then
UniqueData(Counter, 1) = CollObject(Counter)
End If
Next Counter
Les enregistrements vides seront éliminés par le tri effectué après.
Cordialement.
"David T." <direction-ternoise@(enlever)wanadoo.fr> a écrit dans le
message
de news: um2AuNk$Re bonsoir à tous
Dans cette macro ci-dessous, j'aimerais ne pas prendre en compte les
mots
"Utilisateur" et Administrateur"
J'ai vu sur excelabo quelque chose comme ca (>>>Les listes>>>Listbox
alimenté avec une extraction sans doublon)
Merci de l'aide que vous pourez m'apportée.
Salutations
David
La procédure (pas de moi, bien sur !!!)
Sub Liste_Sans_Doublons()
'Permet de lister et trier par ordre alhabétique dans la
'feuille "Relevé Général" le matériel dans la feuille sélectionnée en
[O2]
Dim CollObject As New Collection
Dim Counter As Long
Dim FirstDataRow As Long
Dim LastRow As Long
Dim NameOfSheet As String
Dim SearchColumn As String
Dim SearchRange As Range
Dim SearchData As Variant
Dim UniqueColumn As Long
Dim UniqueData() As Variant
'paramètres de travail :
With ActiveSheet
Range("B6:B75").Select
Selection.ClearContents
Range("B6").Select
NameOfSheet = [O3]
End With
SearchColumn = "C"
FirstDataRow = 4 ' s'il y a une ligne d'entête
On Error Resume Next
With Worksheets(NameOfSheet)
UniqueColumn = .Columns(SearchColumn).Column
LastRow = .Cells(65536, UniqueColumn).End(xlUp).Row
Set SearchRange = .Range(.Cells(FirstDataRow, UniqueColumn), _
.Cells(LastRow, UniqueColumn))
SearchData = SearchRange.Value
For Counter = FirstDataRow To LastRow
CollObject.Add Item:=SearchData(Counter - FirstDataRow + 1, 1), _
key:=CStr(SearchData(Counter - FirstDataRow + 1, 1))
Next Counter
End With
ReDim UniqueData(1 To CollObject.Count, 1 To 1)
For Counter = 1 To CollObject.Count
UniqueData(Counter, 1) = CollObject(Counter)
Next Counter
'pour renvoyer le résultat dans une feuille de calcul
Sheets("Relevé Général").Select
Range("B6").Resize(UBound(UniqueData, 1), 1).Value = UniqueData
Range("B6:B75").Select
Selection.Sort Key1:=Range("B6"), Order1:=xlAscending, Header:=xlGuess,
_
OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom
Range("O3").Select
End Sub
-- direction-ternoise@(supprimerceci)wanadoo.fr
For Counter = 1 To CollObject.Count
If CollObjet(Counter)<>"Utilisateur" And
CollObject(Counter)<>"Administrateur" Then
UniqueData(Counter, 1) = CollObject(Counter)
End If
Next Counter
For Counter = 1 To CollObject.Count
UniqueData(Counter, 1) = CollObject(Counter)
Next Counter
Bonjour Eric
Meci de ta réponse, mais ou mettre ce bout de code? Pour moi c'est du
chinois tout ca !!!
Juste comme ca, je l'ai collé en dessous de
For Counter = FirstDataRow To LastRow
CollObject.Add Item:=SearchData(Counter - FirstDataRow + 1, 1), _
key:=CStr(SearchData(Counter - FirstDataRow + 1, 1))
Next Counter
Bien sur, cela ne fonctionne pas.
Merci de votre aide
Salutations
David
"Eric KERGRESSE" a écrit dans le message de
news:unNHIjo$Bonjour,
Peut-être une piste, sans garantie car non essayé :
For Counter = 1 To CollObject.Count
If CollObjet(Counter)<>"Utilisateur" And
CollObject(Counter)<>"Administrateur" Then
UniqueData(Counter, 1) = CollObject(Counter)
End If
Next Counter
Les enregistrements vides seront éliminés par le tri effectué après.
Cordialement.
"David T." <direction-ternoise@(enlever)wanadoo.fr> a écrit dans le
messagede news: um2AuNk$Re bonsoir à tous
Dans cette macro ci-dessous, j'aimerais ne pas prendre en compte les
mots"Utilisateur" et Administrateur"
J'ai vu sur excelabo quelque chose comme ca (>>>Les listes>>>Listbox
alimenté avec une extraction sans doublon)
Merci de l'aide que vous pourez m'apportée.
Salutations
David
La procédure (pas de moi, bien sur !!!)
Sub Liste_Sans_Doublons()
'Permet de lister et trier par ordre alhabétique dans la
'feuille "Relevé Général" le matériel dans la feuille sélectionnée en
[O2]
Dim CollObject As New Collection
Dim Counter As Long
Dim FirstDataRow As Long
Dim LastRow As Long
Dim NameOfSheet As String
Dim SearchColumn As String
Dim SearchRange As Range
Dim SearchData As Variant
Dim UniqueColumn As Long
Dim UniqueData() As Variant
'paramètres de travail :
With ActiveSheet
Range("B6:B75").Select
Selection.ClearContents
Range("B6").Select
NameOfSheet = [O3]
End With
SearchColumn = "C"
FirstDataRow = 4 ' s'il y a une ligne d'entête
On Error Resume Next
With Worksheets(NameOfSheet)
UniqueColumn = .Columns(SearchColumn).Column
LastRow = .Cells(65536, UniqueColumn).End(xlUp).Row
Set SearchRange = .Range(.Cells(FirstDataRow, UniqueColumn), _
.Cells(LastRow, UniqueColumn))
SearchData = SearchRange.Value
For Counter = FirstDataRow To LastRow
CollObject.Add Item:=SearchData(Counter - FirstDataRow + 1, 1),
_
key:=CStr(SearchData(Counter - FirstDataRow + 1, 1))
Next Counter
End With
ReDim UniqueData(1 To CollObject.Count, 1 To 1)
For Counter = 1 To CollObject.Count
UniqueData(Counter, 1) = CollObject(Counter)
Next Counter
'pour renvoyer le résultat dans une feuille de calcul
Sheets("Relevé Général").Select
Range("B6").Resize(UBound(UniqueData, 1), 1).Value = UniqueData
Range("B6:B75").Select
Selection.Sort Key1:=Range("B6"), Order1:=xlAscending,
Header:=xlGuess,
_OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom
Range("O3").Select
End Sub
-- direction-ternoise@(supprimerceci)wanadoo.fr
For Counter = 1 To CollObject.Count
If CollObjet(Counter)<>"Utilisateur" And
CollObject(Counter)<>"Administrateur" Then
UniqueData(Counter, 1) = CollObject(Counter)
End If
Next Counter
For Counter = 1 To CollObject.Count
UniqueData(Counter, 1) = CollObject(Counter)
Next Counter
Bonjour Eric
Meci de ta réponse, mais ou mettre ce bout de code? Pour moi c'est du
chinois tout ca !!!
Juste comme ca, je l'ai collé en dessous de
For Counter = FirstDataRow To LastRow
CollObject.Add Item:=SearchData(Counter - FirstDataRow + 1, 1), _
key:=CStr(SearchData(Counter - FirstDataRow + 1, 1))
Next Counter
Bien sur, cela ne fonctionne pas.
Merci de votre aide
Salutations
David
"Eric KERGRESSE" <ERIC.KERGRESSE@wanadoo.fr> a écrit dans le message de
news:unNHIjo$DHA.3352@TK2MSFTNGP09.phx.gbl...
Bonjour,
Peut-être une piste, sans garantie car non essayé :
For Counter = 1 To CollObject.Count
If CollObjet(Counter)<>"Utilisateur" And
CollObject(Counter)<>"Administrateur" Then
UniqueData(Counter, 1) = CollObject(Counter)
End If
Next Counter
Les enregistrements vides seront éliminés par le tri effectué après.
Cordialement.
"David T." <direction-ternoise@(enlever)wanadoo.fr> a écrit dans le
message
de news: um2AuNk$DHA.2632@TK2MSFTNGP12.phx.gbl...
Re bonsoir à tous
Dans cette macro ci-dessous, j'aimerais ne pas prendre en compte les
mots
"Utilisateur" et Administrateur"
J'ai vu sur excelabo quelque chose comme ca (>>>Les listes>>>Listbox
alimenté avec une extraction sans doublon)
Merci de l'aide que vous pourez m'apportée.
Salutations
David
La procédure (pas de moi, bien sur !!!)
Sub Liste_Sans_Doublons()
'Permet de lister et trier par ordre alhabétique dans la
'feuille "Relevé Général" le matériel dans la feuille sélectionnée en
[O2]
Dim CollObject As New Collection
Dim Counter As Long
Dim FirstDataRow As Long
Dim LastRow As Long
Dim NameOfSheet As String
Dim SearchColumn As String
Dim SearchRange As Range
Dim SearchData As Variant
Dim UniqueColumn As Long
Dim UniqueData() As Variant
'paramètres de travail :
With ActiveSheet
Range("B6:B75").Select
Selection.ClearContents
Range("B6").Select
NameOfSheet = [O3]
End With
SearchColumn = "C"
FirstDataRow = 4 ' s'il y a une ligne d'entête
On Error Resume Next
With Worksheets(NameOfSheet)
UniqueColumn = .Columns(SearchColumn).Column
LastRow = .Cells(65536, UniqueColumn).End(xlUp).Row
Set SearchRange = .Range(.Cells(FirstDataRow, UniqueColumn), _
.Cells(LastRow, UniqueColumn))
SearchData = SearchRange.Value
For Counter = FirstDataRow To LastRow
CollObject.Add Item:=SearchData(Counter - FirstDataRow + 1, 1),
_
key:=CStr(SearchData(Counter - FirstDataRow + 1, 1))
Next Counter
End With
ReDim UniqueData(1 To CollObject.Count, 1 To 1)
For Counter = 1 To CollObject.Count
UniqueData(Counter, 1) = CollObject(Counter)
Next Counter
'pour renvoyer le résultat dans une feuille de calcul
Sheets("Relevé Général").Select
Range("B6").Resize(UBound(UniqueData, 1), 1).Value = UniqueData
Range("B6:B75").Select
Selection.Sort Key1:=Range("B6"), Order1:=xlAscending,
Header:=xlGuess,
_
OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom
Range("O3").Select
End Sub
-- direction-ternoise@(supprimerceci)wanadoo.fr
For Counter = 1 To CollObject.Count
If CollObjet(Counter)<>"Utilisateur" And
CollObject(Counter)<>"Administrateur" Then
UniqueData(Counter, 1) = CollObject(Counter)
End If
Next Counter
For Counter = 1 To CollObject.Count
UniqueData(Counter, 1) = CollObject(Counter)
Next Counter
Bonjour Eric
Meci de ta réponse, mais ou mettre ce bout de code? Pour moi c'est du
chinois tout ca !!!
Juste comme ca, je l'ai collé en dessous de
For Counter = FirstDataRow To LastRow
CollObject.Add Item:=SearchData(Counter - FirstDataRow + 1, 1), _
key:=CStr(SearchData(Counter - FirstDataRow + 1, 1))
Next Counter
Bien sur, cela ne fonctionne pas.
Merci de votre aide
Salutations
David
"Eric KERGRESSE" a écrit dans le message de
news:unNHIjo$Bonjour,
Peut-être une piste, sans garantie car non essayé :
For Counter = 1 To CollObject.Count
If CollObjet(Counter)<>"Utilisateur" And
CollObject(Counter)<>"Administrateur" Then
UniqueData(Counter, 1) = CollObject(Counter)
End If
Next Counter
Les enregistrements vides seront éliminés par le tri effectué après.
Cordialement.
"David T." <direction-ternoise@(enlever)wanadoo.fr> a écrit dans le
messagede news: um2AuNk$Re bonsoir à tous
Dans cette macro ci-dessous, j'aimerais ne pas prendre en compte les
mots"Utilisateur" et Administrateur"
J'ai vu sur excelabo quelque chose comme ca (>>>Les listes>>>Listbox
alimenté avec une extraction sans doublon)
Merci de l'aide que vous pourez m'apportée.
Salutations
David
La procédure (pas de moi, bien sur !!!)
Sub Liste_Sans_Doublons()
'Permet de lister et trier par ordre alhabétique dans la
'feuille "Relevé Général" le matériel dans la feuille sélectionnée en
[O2]
Dim CollObject As New Collection
Dim Counter As Long
Dim FirstDataRow As Long
Dim LastRow As Long
Dim NameOfSheet As String
Dim SearchColumn As String
Dim SearchRange As Range
Dim SearchData As Variant
Dim UniqueColumn As Long
Dim UniqueData() As Variant
'paramètres de travail :
With ActiveSheet
Range("B6:B75").Select
Selection.ClearContents
Range("B6").Select
NameOfSheet = [O3]
End With
SearchColumn = "C"
FirstDataRow = 4 ' s'il y a une ligne d'entête
On Error Resume Next
With Worksheets(NameOfSheet)
UniqueColumn = .Columns(SearchColumn).Column
LastRow = .Cells(65536, UniqueColumn).End(xlUp).Row
Set SearchRange = .Range(.Cells(FirstDataRow, UniqueColumn), _
.Cells(LastRow, UniqueColumn))
SearchData = SearchRange.Value
For Counter = FirstDataRow To LastRow
CollObject.Add Item:=SearchData(Counter - FirstDataRow + 1, 1),
_
key:=CStr(SearchData(Counter - FirstDataRow + 1, 1))
Next Counter
End With
ReDim UniqueData(1 To CollObject.Count, 1 To 1)
For Counter = 1 To CollObject.Count
UniqueData(Counter, 1) = CollObject(Counter)
Next Counter
'pour renvoyer le résultat dans une feuille de calcul
Sheets("Relevé Général").Select
Range("B6").Resize(UBound(UniqueData, 1), 1).Value = UniqueData
Range("B6:B75").Select
Selection.Sort Key1:=Range("B6"), Order1:=xlAscending,
Header:=xlGuess,
_OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom
Range("O3").Select
End Sub
-- direction-ternoise@(supprimerceci)wanadoo.fr
Re-bonjour,For Counter = 1 To CollObject.Count
If CollObjet(Counter)<>"Utilisateur" And
CollObject(Counter)<>"Administrateur" Then
UniqueData(Counter, 1) = CollObject(Counter)
End If
Next Counter
est à mettre à la place deFor Counter = 1 To CollObject.Count
UniqueData(Counter, 1) = CollObject(Counter)
Next Counter
Explication :
Si la variable tableau CollObject contient les mots "Utilisateur" et
"Administrateur" alors le contenu de la variable
n'est pas chargé dans la variable tableau UniqueData(X,1)
Attention, le code qui apparait à l'écran est différent de ce que j'ai
tapé
sur mon micro, il faut que la deux
conditions apparaissent sur la même ligne, ou mettre un _ juste avant le
And
(pas d'espace) et faire un retour chariot avant la lettre A
pour passer à la ligne suivante comme ceci :
For Counter = 1 To CollObject.Count
If CollObjet(Counter)<>"Utilisateur" _
And CollObject(Counter)<>"Administrateur" Then
UniqueData(Counter, 1) = CollObject(Counter)
End If
Next Counter
Cordialement
"David T." <direction-ternoise@(enlever)wanadoo.fr> a écrit dans le
message
de news: OtTdCVp$Bonjour Eric
Meci de ta réponse, mais ou mettre ce bout de code? Pour moi c'est du
chinois tout ca !!!
Juste comme ca, je l'ai collé en dessous de
For Counter = FirstDataRow To LastRow
CollObject.Add Item:=SearchData(Counter - FirstDataRow + 1, 1), _
key:=CStr(SearchData(Counter - FirstDataRow + 1, 1))
Next Counter
Bien sur, cela ne fonctionne pas.
Merci de votre aide
Salutations
David
"Eric KERGRESSE" a écrit dans le message de
news:unNHIjo$Bonjour,
Peut-être une piste, sans garantie car non essayé :
For Counter = 1 To CollObject.Count
If CollObjet(Counter)<>"Utilisateur" And
CollObject(Counter)<>"Administrateur" Then
UniqueData(Counter, 1) = CollObject(Counter)
End If
Next Counter
Les enregistrements vides seront éliminés par le tri effectué après.
Cordialement.
"David T." <direction-ternoise@(enlever)wanadoo.fr> a écrit dans le
messagede news: um2AuNk$Re bonsoir à tous
Dans cette macro ci-dessous, j'aimerais ne pas prendre en compte les
mots"Utilisateur" et Administrateur"
J'ai vu sur excelabo quelque chose comme ca (>>>Les listes>>>Listbox
alimenté avec une extraction sans doublon)
Merci de l'aide que vous pourez m'apportée.
Salutations
David
La procédure (pas de moi, bien sur !!!)
Sub Liste_Sans_Doublons()
'Permet de lister et trier par ordre alhabétique dans la
'feuille "Relevé Général" le matériel dans la feuille sélectionnée
en
[O2]
Dim CollObject As New Collection
Dim Counter As Long
Dim FirstDataRow As Long
Dim LastRow As Long
Dim NameOfSheet As String
Dim SearchColumn As String
Dim SearchRange As Range
Dim SearchData As Variant
Dim UniqueColumn As Long
Dim UniqueData() As Variant
'paramètres de travail :
With ActiveSheet
Range("B6:B75").Select
Selection.ClearContents
Range("B6").Select
NameOfSheet = [O3]
End With
SearchColumn = "C"
FirstDataRow = 4 ' s'il y a une ligne d'entête
On Error Resume Next
With Worksheets(NameOfSheet)
UniqueColumn = .Columns(SearchColumn).Column
LastRow = .Cells(65536, UniqueColumn).End(xlUp).Row
Set SearchRange = .Range(.Cells(FirstDataRow, UniqueColumn), _
.Cells(LastRow, UniqueColumn))
SearchData = SearchRange.Value
For Counter = FirstDataRow To LastRow
CollObject.Add Item:=SearchData(Counter - FirstDataRow + 1,
1),
_key:=CStr(SearchData(Counter - FirstDataRow + 1, 1))
Next Counter
End With
ReDim UniqueData(1 To CollObject.Count, 1 To 1)
For Counter = 1 To CollObject.Count
UniqueData(Counter, 1) = CollObject(Counter)
Next Counter
'pour renvoyer le résultat dans une feuille de calcul
Sheets("Relevé Général").Select
Range("B6").Resize(UBound(UniqueData, 1), 1).Value = UniqueData
Range("B6:B75").Select
Selection.Sort Key1:=Range("B6"), Order1:=xlAscending,
Header:=xlGuess,_OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom
Range("O3").Select
End Sub
-- direction-ternoise@(supprimerceci)wanadoo.fr
Re-bonjour,
For Counter = 1 To CollObject.Count
If CollObjet(Counter)<>"Utilisateur" And
CollObject(Counter)<>"Administrateur" Then
UniqueData(Counter, 1) = CollObject(Counter)
End If
Next Counter
est à mettre à la place de
For Counter = 1 To CollObject.Count
UniqueData(Counter, 1) = CollObject(Counter)
Next Counter
Explication :
Si la variable tableau CollObject contient les mots "Utilisateur" et
"Administrateur" alors le contenu de la variable
n'est pas chargé dans la variable tableau UniqueData(X,1)
Attention, le code qui apparait à l'écran est différent de ce que j'ai
tapé
sur mon micro, il faut que la deux
conditions apparaissent sur la même ligne, ou mettre un _ juste avant le
And
(pas d'espace) et faire un retour chariot avant la lettre A
pour passer à la ligne suivante comme ceci :
For Counter = 1 To CollObject.Count
If CollObjet(Counter)<>"Utilisateur" _
And CollObject(Counter)<>"Administrateur" Then
UniqueData(Counter, 1) = CollObject(Counter)
End If
Next Counter
Cordialement
"David T." <direction-ternoise@(enlever)wanadoo.fr> a écrit dans le
message
de news: OtTdCVp$DHA.2664@TK2MSFTNGP09.phx.gbl...
Bonjour Eric
Meci de ta réponse, mais ou mettre ce bout de code? Pour moi c'est du
chinois tout ca !!!
Juste comme ca, je l'ai collé en dessous de
For Counter = FirstDataRow To LastRow
CollObject.Add Item:=SearchData(Counter - FirstDataRow + 1, 1), _
key:=CStr(SearchData(Counter - FirstDataRow + 1, 1))
Next Counter
Bien sur, cela ne fonctionne pas.
Merci de votre aide
Salutations
David
"Eric KERGRESSE" <ERIC.KERGRESSE@wanadoo.fr> a écrit dans le message de
news:unNHIjo$DHA.3352@TK2MSFTNGP09.phx.gbl...
Bonjour,
Peut-être une piste, sans garantie car non essayé :
For Counter = 1 To CollObject.Count
If CollObjet(Counter)<>"Utilisateur" And
CollObject(Counter)<>"Administrateur" Then
UniqueData(Counter, 1) = CollObject(Counter)
End If
Next Counter
Les enregistrements vides seront éliminés par le tri effectué après.
Cordialement.
"David T." <direction-ternoise@(enlever)wanadoo.fr> a écrit dans le
message
de news: um2AuNk$DHA.2632@TK2MSFTNGP12.phx.gbl...
Re bonsoir à tous
Dans cette macro ci-dessous, j'aimerais ne pas prendre en compte les
mots
"Utilisateur" et Administrateur"
J'ai vu sur excelabo quelque chose comme ca (>>>Les listes>>>Listbox
alimenté avec une extraction sans doublon)
Merci de l'aide que vous pourez m'apportée.
Salutations
David
La procédure (pas de moi, bien sur !!!)
Sub Liste_Sans_Doublons()
'Permet de lister et trier par ordre alhabétique dans la
'feuille "Relevé Général" le matériel dans la feuille sélectionnée
en
[O2]
Dim CollObject As New Collection
Dim Counter As Long
Dim FirstDataRow As Long
Dim LastRow As Long
Dim NameOfSheet As String
Dim SearchColumn As String
Dim SearchRange As Range
Dim SearchData As Variant
Dim UniqueColumn As Long
Dim UniqueData() As Variant
'paramètres de travail :
With ActiveSheet
Range("B6:B75").Select
Selection.ClearContents
Range("B6").Select
NameOfSheet = [O3]
End With
SearchColumn = "C"
FirstDataRow = 4 ' s'il y a une ligne d'entête
On Error Resume Next
With Worksheets(NameOfSheet)
UniqueColumn = .Columns(SearchColumn).Column
LastRow = .Cells(65536, UniqueColumn).End(xlUp).Row
Set SearchRange = .Range(.Cells(FirstDataRow, UniqueColumn), _
.Cells(LastRow, UniqueColumn))
SearchData = SearchRange.Value
For Counter = FirstDataRow To LastRow
CollObject.Add Item:=SearchData(Counter - FirstDataRow + 1,
1),
_
key:=CStr(SearchData(Counter - FirstDataRow + 1, 1))
Next Counter
End With
ReDim UniqueData(1 To CollObject.Count, 1 To 1)
For Counter = 1 To CollObject.Count
UniqueData(Counter, 1) = CollObject(Counter)
Next Counter
'pour renvoyer le résultat dans une feuille de calcul
Sheets("Relevé Général").Select
Range("B6").Resize(UBound(UniqueData, 1), 1).Value = UniqueData
Range("B6:B75").Select
Selection.Sort Key1:=Range("B6"), Order1:=xlAscending,
Header:=xlGuess,
_
OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom
Range("O3").Select
End Sub
-- direction-ternoise@(supprimerceci)wanadoo.fr
Re-bonjour,For Counter = 1 To CollObject.Count
If CollObjet(Counter)<>"Utilisateur" And
CollObject(Counter)<>"Administrateur" Then
UniqueData(Counter, 1) = CollObject(Counter)
End If
Next Counter
est à mettre à la place deFor Counter = 1 To CollObject.Count
UniqueData(Counter, 1) = CollObject(Counter)
Next Counter
Explication :
Si la variable tableau CollObject contient les mots "Utilisateur" et
"Administrateur" alors le contenu de la variable
n'est pas chargé dans la variable tableau UniqueData(X,1)
Attention, le code qui apparait à l'écran est différent de ce que j'ai
tapé
sur mon micro, il faut que la deux
conditions apparaissent sur la même ligne, ou mettre un _ juste avant le
And
(pas d'espace) et faire un retour chariot avant la lettre A
pour passer à la ligne suivante comme ceci :
For Counter = 1 To CollObject.Count
If CollObjet(Counter)<>"Utilisateur" _
And CollObject(Counter)<>"Administrateur" Then
UniqueData(Counter, 1) = CollObject(Counter)
End If
Next Counter
Cordialement
"David T." <direction-ternoise@(enlever)wanadoo.fr> a écrit dans le
message
de news: OtTdCVp$Bonjour Eric
Meci de ta réponse, mais ou mettre ce bout de code? Pour moi c'est du
chinois tout ca !!!
Juste comme ca, je l'ai collé en dessous de
For Counter = FirstDataRow To LastRow
CollObject.Add Item:=SearchData(Counter - FirstDataRow + 1, 1), _
key:=CStr(SearchData(Counter - FirstDataRow + 1, 1))
Next Counter
Bien sur, cela ne fonctionne pas.
Merci de votre aide
Salutations
David
"Eric KERGRESSE" a écrit dans le message de
news:unNHIjo$Bonjour,
Peut-être une piste, sans garantie car non essayé :
For Counter = 1 To CollObject.Count
If CollObjet(Counter)<>"Utilisateur" And
CollObject(Counter)<>"Administrateur" Then
UniqueData(Counter, 1) = CollObject(Counter)
End If
Next Counter
Les enregistrements vides seront éliminés par le tri effectué après.
Cordialement.
"David T." <direction-ternoise@(enlever)wanadoo.fr> a écrit dans le
messagede news: um2AuNk$Re bonsoir à tous
Dans cette macro ci-dessous, j'aimerais ne pas prendre en compte les
mots"Utilisateur" et Administrateur"
J'ai vu sur excelabo quelque chose comme ca (>>>Les listes>>>Listbox
alimenté avec une extraction sans doublon)
Merci de l'aide que vous pourez m'apportée.
Salutations
David
La procédure (pas de moi, bien sur !!!)
Sub Liste_Sans_Doublons()
'Permet de lister et trier par ordre alhabétique dans la
'feuille "Relevé Général" le matériel dans la feuille sélectionnée
en
[O2]
Dim CollObject As New Collection
Dim Counter As Long
Dim FirstDataRow As Long
Dim LastRow As Long
Dim NameOfSheet As String
Dim SearchColumn As String
Dim SearchRange As Range
Dim SearchData As Variant
Dim UniqueColumn As Long
Dim UniqueData() As Variant
'paramètres de travail :
With ActiveSheet
Range("B6:B75").Select
Selection.ClearContents
Range("B6").Select
NameOfSheet = [O3]
End With
SearchColumn = "C"
FirstDataRow = 4 ' s'il y a une ligne d'entête
On Error Resume Next
With Worksheets(NameOfSheet)
UniqueColumn = .Columns(SearchColumn).Column
LastRow = .Cells(65536, UniqueColumn).End(xlUp).Row
Set SearchRange = .Range(.Cells(FirstDataRow, UniqueColumn), _
.Cells(LastRow, UniqueColumn))
SearchData = SearchRange.Value
For Counter = FirstDataRow To LastRow
CollObject.Add Item:=SearchData(Counter - FirstDataRow + 1,
1),
_key:=CStr(SearchData(Counter - FirstDataRow + 1, 1))
Next Counter
End With
ReDim UniqueData(1 To CollObject.Count, 1 To 1)
For Counter = 1 To CollObject.Count
UniqueData(Counter, 1) = CollObject(Counter)
Next Counter
'pour renvoyer le résultat dans une feuille de calcul
Sheets("Relevé Général").Select
Range("B6").Resize(UBound(UniqueData, 1), 1).Value = UniqueData
Range("B6:B75").Select
Selection.Sort Key1:=Range("B6"), Order1:=xlAscending,
Header:=xlGuess,_OrderCustom:=1, MatchCase:úlse, Orientation:=xlTopToBottom
Range("O3").Select
End Sub
-- direction-ternoise@(supprimerceci)wanadoo.fr