Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
560to564
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
560to564
560to564
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
VBA, nur ganze Zeichenfolgen suchen
08.02.2005 10:57:00
Günter
Schönen guten Tag !
Wer könnte helfen ?
Folgendes: In einem Makro habe ich über eine Userform u.a.
folgendes stehen:
If chkMod Then
sMod = xlWhole
Else
sMod = xlPart
End If
Hier soll in einer Exceldatei nach bestimmten Text
gesucht werden.
Mit dem o.g. Teil aus dem Makro soll festgelegt werden,
ob nach einem ganzen Begriff oder einem Teilbegriff gesucht
wird.
Nun klappt das nicht so, wie ich mir das so dachte.
Wenn "xlWhole" aktiviert ist, bringt die Suche alles, was in etwa
dem Suchbegriff nahekommt.
So ist dies auch gewollt. Aber mit dem xlPart wollte ich bezwecken,
dass der genaue Suchbegriff gefunden wird.
Hat jemand eine Idee ?
Gruss
Günter

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA, nur ganze Zeichenfolgen suchen
08.02.2005 11:04:36
Josef
Hallo Günter
Das geht so!

Dim sMod As XlLookAt
If chkMod Then
sMod = xlWhole 'ganze Zeichenfolge suchen
Else
sMod = xlPart  'teil suchen
End If

Gruß Sepp
P.S.: Rückmeldung nicht vergessen!
AW: VBA, nur ganze Zeichenfolgen suchen
08.02.2005 11:13:50
Günter
Hallo Josef !
Erst Mal danke.
Genau so hatte ich es in VBA.
Vielleicht habe ich mich auch falsch ausgedrückt.
Wenn ganze Zeichenfolgen, dann -wie bei Word- ein ganzes Wort suchen.
Tschuldigung
Günter
AW: VBA, nur ganze Zeichenfolgen suchen
08.02.2005 11:20:21
Josef
Hallo Günter!
Wenn du in der Find-Anweisung "LookAt:=sMod" angibst, dann macht es ganau das!
Wie sieht denn dein Suchcode aus?
Gruß Sepp
P.S.: Rückmeldung nicht vergessen!
Anzeige
AW: VBA, nur ganze Zeichenfolgen suchen
08.02.2005 11:31:23
Günter
Hallo !
Der Suchmodus sieht so aus:
' Suchmodus
If chkMod Then
sMod = xlWhole
Else
sMod = xlPart
End If
Gruss
Günter
AW: VBA, nur ganze Zeichenfolgen suchen
08.02.2005 11:33:03
Josef
Hallo Günter!
Das hab ich ja schon gesehen! ;-))
Ich meine den Code zum SUCHEN!


Gruß Sepp
P.S.: Rückmeldung nicht vergessen!
AW: VBA, nur ganze Zeichenfolgen suchen
08.02.2005 11:35:18
Günter
Hallo !
Hier ist das Makro:
Option Explicit

Private Sub CheckBox1_Click()
End Sub


Private Sub cmdClose_Click()
Unload Me
End Sub


Private Sub cmdSearch_Click()
Dim rng As Range
Dim sFirst As String
Dim sFind As String
Dim sMod As XlLookAt
Dim n As Integer, i As Integer
Dim arrG
Dim arrL
Dim chkMod
arrG = Columns(7)
arrL = Columns(12)
Columns(12) = arrG
Columns(7) = arrL
If txtSearch = "" Then Exit Sub
ListBox1.Clear 'Listbox leeren
'Textboxen leeren
For n = 0 To 9
Controls("txt" & n + 1) = ""
Next
n = 0
'Überschriftenzeile
ListBox1.AddItem Sheets("Bestandsprotokoll").Cells(11, 1)
For n = 0 To 9
ListBox1.List(i, n) = Sheets("Bestandsprotokoll").Cells(11, n + 1)
Next
i = i + 1
sFind = txtSearch
' Suchmodus
If chkMod Then
sMod = xlWhole
Else
sMod = xlPart
End If
'If chkMod Then
'sMod = xlPart
'Else
'sMod = xlWhole
'End If
'Suchen
Set rng = Sheets("Bestandsprotokoll").Cells.Find(What:=sFind, LookIn:=xlValues, LookAt:=sMod)
If Not rng Is Nothing Then
sFirst = rng.Address
Do
ListBox1.AddItem Sheets("Bestandsprotokoll").Cells(rng.Row, 1)
For n = 0 To 9
ListBox1.List(i, n) = Sheets("Bestandsprotokoll").Cells(rng.Row, n + 1)
Next
i = i + 1
'weitersuchen bis zur ltzten Fundstelle
Set rng = Sheets("Bestandsprotokoll").Cells.FindNext(rng)
Loop While rng.Address <> sFirst
End If
If ListBox1.ListCount > 1 Then ListBox1.ListIndex = 1
arrG = Columns(7)
arrL = Columns(12)
Columns(12) = arrG
Columns(7) = arrL
End Sub


Private Sub Label14_Click()
End Sub


Private Sub Label3_Click()
End Sub


Private Sub Label11_Click()
End Sub


Private Sub ListBox1_AfterUpdate()
'Auswählen der Überschriftzeile verhindern
If ListBox1.Selected(0) = True Then ListBox1.Selected(0) = False
End Sub


Private Sub ListBox1_Change()
Dim n As Integer
If ListBox1.ListCount <= 1 Or ListBox1.ListIndex <= 0 Then Exit Sub
For n = 0 To 9
Controls("txt" & n + 1) = ListBox1.List(ListBox1.ListIndex, n)
Next
End Sub


Private Sub txtSearch_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
'Suche mit ENTER in der Textbox starten
If KeyCode = 13 Then cmdSearch_Click
End Sub


Private Sub UserForm_Click()
End Sub

Gruss und Danke
Günter
Anzeige
AW: VBA, nur ganze Zeichenfolgen suchen
08.02.2005 11:38:52
Josef
Hallo Günter!
Ich weis nicht warum das nicht funktionieren sollte!
Heist die CheckBox auch "chkMod" ?
Gruß Sepp
P.S.: Rückmeldung nicht vergessen!
AW: VBA, nur ganze Zeichenfolgen suchen
08.02.2005 11:55:42
Günter
Hallo Josef !
Das wird es sein.
"""CheckBox auch "chkMod""
Der Name lautet in VBA nur Checkbox und nicht chkmod.
gruss
günter

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige