VBA recherche dans tableau de grande dimension (suite)
3 réponses
g.bezamat
Bonjour,
Suite à mon message du 20 décembre, je remercie les 2 personnes qui
m'ont répondu, mais je m'aperçois que cette solution ne marche que si le
tableau ne dépasse pas 65 536 unités.
Je vais essayer de m'en contenter, mais si vous avez un moyen de
dépasser cette limite, il sera le bien venu
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
JB
Bonjour,
nomCherche = InputBox("Nom cherché? ") Set result = Range("A1:Z65000").Find(What:=nomCherche, LookIn:=xlValues) If result Is Nothing Then MsgBox "Non trouvé" Else Range(result).Select End If
Cordialement JB
Bonjour, Suite à mon message du 20 décembre, je remercie les 2 personnes qui m'ont répondu, mais je m'aperçois que cette solution ne marche que si le tableau ne dépasse pas 65 536 unités. Je vais essayer de m'en contenter, mais si vous avez un moyen de dépasser cette limite, il sera le bien venu
Encore merci
Bonjour,
nomCherche = InputBox("Nom cherché? ")
Set result = Range("A1:Z65000").Find(What:=nomCherche,
LookIn:=xlValues)
If result Is Nothing Then
MsgBox "Non trouvé"
Else
Range(result).Select
End If
Cordialement JB
Bonjour,
Suite à mon message du 20 décembre, je remercie les 2 personnes qui
m'ont répondu, mais je m'aperçois que cette solution ne marche que si le
tableau ne dépasse pas 65 536 unités.
Je vais essayer de m'en contenter, mais si vous avez un moyen de
dépasser cette limite, il sera le bien venu
nomCherche = InputBox("Nom cherché? ") Set result = Range("A1:Z65000").Find(What:=nomCherche, LookIn:=xlValues) If result Is Nothing Then MsgBox "Non trouvé" Else Range(result).Select End If
Cordialement JB
Bonjour, Suite à mon message du 20 décembre, je remercie les 2 personnes qui m'ont répondu, mais je m'aperçois que cette solution ne marche que si le tableau ne dépasse pas 65 536 unités. Je vais essayer de m'en contenter, mais si vous avez un moyen de dépasser cette limite, il sera le bien venu
Encore merci
lSteph
BonjØur G, Ceci répondrait-il à ta question
Dim Chmx(100000) As String Sub newchm() Dim i As Long, tst As Boolean, chm As String chm = InputBox("entrer:", "Saisie Chm") tst = False For i = 1 To UBound(Chmx) If Chmx(i) = chm Then MsgBox chm & " existe déjà": tst = True: Exit For End If Next If Not tst Then For i = 1 To UBound(Chmx) If Len(Chmx(i)) < 1 Then Chmx(i) = chm: Exit For Next End If End Sub
'Cdlt.
'lSteph
g.bezamat a pensé très fort :
Bonjour, Suite à mon message du 20 décembre, je remercie les 2 personnes qui m'ont répondu, mais je m'aperçois que cette solution ne marche que si le tableau ne dépasse pas 65 536 unités. Je vais essayer de m'en contenter, mais si vous avez un moyen de dépasser cette limite, il sera le bien venu
Encore merci
-- - -
BonjØur G,
Ceci répondrait-il à ta question
Dim Chmx(100000) As String
Sub newchm()
Dim i As Long, tst As Boolean, chm As String
chm = InputBox("entrer:", "Saisie Chm")
tst = False
For i = 1 To UBound(Chmx)
If Chmx(i) = chm Then
MsgBox chm & " existe déjà": tst = True: Exit For
End If
Next
If Not tst Then
For i = 1 To UBound(Chmx)
If Len(Chmx(i)) < 1 Then Chmx(i) = chm: Exit For
Next
End If
End Sub
'Cdlt.
'lSteph
g.bezamat a pensé très fort :
Bonjour,
Suite à mon message du 20 décembre, je remercie les 2 personnes qui
m'ont répondu, mais je m'aperçois que cette solution ne marche que si le
tableau ne dépasse pas 65 536 unités.
Je vais essayer de m'en contenter, mais si vous avez un moyen de dépasser
cette limite, il sera le bien venu
Dim Chmx(100000) As String Sub newchm() Dim i As Long, tst As Boolean, chm As String chm = InputBox("entrer:", "Saisie Chm") tst = False For i = 1 To UBound(Chmx) If Chmx(i) = chm Then MsgBox chm & " existe déjà": tst = True: Exit For End If Next If Not tst Then For i = 1 To UBound(Chmx) If Len(Chmx(i)) < 1 Then Chmx(i) = chm: Exit For Next End If End Sub
'Cdlt.
'lSteph
g.bezamat a pensé très fort :
Bonjour, Suite à mon message du 20 décembre, je remercie les 2 personnes qui m'ont répondu, mais je m'aperçois que cette solution ne marche que si le tableau ne dépasse pas 65 536 unités. Je vais essayer de m'en contenter, mais si vous avez un moyen de dépasser cette limite, il sera le bien venu
Encore merci
-- - -
Michel Pierron
Bonjour g.bezamat; Essaie avec quelque chose comme:
Private Function IsInArray(Value, Tablo) As Boolean If Not IsArray(Tablo) Then Exit Function IsInArray = InStr(1, vbNullChar & Join(Tablo, vbNullChar) _ & vbNullChar, vbNullChar & Value & vbNullChar) > 0 End Function
MP
"g.bezamat" a écrit dans le message de news:
Bonjour, Suite à mon message du 20 décembre, je remercie les 2 personnes qui m'ont répondu, mais je m'aperçois que cette solution ne marche que si le tableau ne dépasse pas 65 536 unités. Je vais essayer de m'en contenter, mais si vous avez un moyen de dépasser cette limite, il sera le bien venu
Encore merci
Bonjour g.bezamat;
Essaie avec quelque chose comme:
Private Function IsInArray(Value, Tablo) As Boolean
If Not IsArray(Tablo) Then Exit Function
IsInArray = InStr(1, vbNullChar & Join(Tablo, vbNullChar) _
& vbNullChar, vbNullChar & Value & vbNullChar) > 0
End Function
MP
"g.bezamat" <g.bezamat@cegetel.net> a écrit dans le message de news:
uWXrjwMJHHA.3264@TK2MSFTNGP02.phx.gbl...
Bonjour,
Suite à mon message du 20 décembre, je remercie les 2 personnes qui
m'ont répondu, mais je m'aperçois que cette solution ne marche que si le
tableau ne dépasse pas 65 536 unités.
Je vais essayer de m'en contenter, mais si vous avez un moyen de
dépasser cette limite, il sera le bien venu
Bonjour g.bezamat; Essaie avec quelque chose comme:
Private Function IsInArray(Value, Tablo) As Boolean If Not IsArray(Tablo) Then Exit Function IsInArray = InStr(1, vbNullChar & Join(Tablo, vbNullChar) _ & vbNullChar, vbNullChar & Value & vbNullChar) > 0 End Function
MP
"g.bezamat" a écrit dans le message de news:
Bonjour, Suite à mon message du 20 décembre, je remercie les 2 personnes qui m'ont répondu, mais je m'aperçois que cette solution ne marche que si le tableau ne dépasse pas 65 536 unités. Je vais essayer de m'en contenter, mais si vous avez un moyen de dépasser cette limite, il sera le bien venu