Office: [Excel07] Suchergebnis aus ListBox löschen und Suche akt.

Helfe beim Thema [Excel07] Suchergebnis aus ListBox löschen und Suche akt. in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo, ich stehe vor einem Problem. Vorweg muss ich zugeben, dass ich vorher nie mit VBA oder Ähnlichem beschäftigt habe und mir die Lösung bisher... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Khelben, 19. Januar 2010.

  1. Khelben Erfahrener User

    [Excel07] Suchergebnis aus ListBox löschen und Suche akt.


    Hallo,

    ich stehe vor einem Problem.
    Vorweg muss ich zugeben, dass ich vorher nie mit VBA oder Ähnlichem beschäftigt habe und mir die Lösung bisher aus Online-Tutorials und I-Net recherche zusammengebastelt habe. Deshalb sind bestimmt einige Sachen eher Suboptimal :-D

    Nun zu meinem Problem:
    Ich habe eine Datenbank mittels UserForm erstellt und dieses UserForm auch mit einer Suchfunktion versehen, welche die Ergebnisse in einer Listbox ausgibt. Klickt man nun einen Datensatz in der Listbox an, so wird der Inhalt wieder in das Eingabeformular übertragen, so dass man diese Eingaben auch ändern kann (das Ändern funktioniert).
    Außerdem soll es möglich sein den markierten Datensatz aus der Datenbank und dann auch den Eintrag aus der Listbox zu löschen.
    Das Löschen an sich funktioniert auch an beiden Stellen, nur ist danach die Suche nicht mehr verwertbar, wenn ich einen Ergebnis aus der Mitte sder Suche lösche ( Ich nehme an, da ich den ListIndex durcheinander bringe).
    Eine einfache für mich ausreichende Lösung wäre es, wenn nach dem Löschen automatisch die Suchprozedur erneut ausgeführt werden würde. Ist das irgendwie möglich, oder müsste ich die Suchprozedur nochmals als Unterprodzedur in die Löschprozedur übernehmen?

    Hier mal die beiden Codes:

    Code:
    Private Sub CommandButton1_Click()                                          'Suchfunktion
    Dim rng As Range
    Dim strFirst As String
    Dim vtmp() As Long
    Dim IntC As Integer
    
    Marc_A:
    If Len(Trim(TextBoxSuch)) = 0 Then Exit Sub                                 'Bei leerer Suche Routine verlassen
    ListBox2.Clear                                                              'Alte Suchergebnisse löschen
    For IntC = 1 To 8                                                           'Eingabefelder leeren
       Controls("TextBox" & IntC) = ""
    Next
    ReDim vtmp(0)
    
    With Sheets("Tabelle1")
       Set rng = .Range("A:K").Find(What:=TextBoxSuch, Lookat:=xlPart)          'Suchbereich festlegen
       If Not rng Is Nothing Then                                               'Wenn Suche erfolgreich
          strFirst = rng.Address
          Do
             If Not (IsNumeric(Application.Match(rng.Row, vtmp, 0))) Then
                ReDim Preserve vtmp(UBound(vtmp) + 1)
                vtmp(UBound(vtmp)) = rng.Row
                ListBox2.AddItem .Cells(rng.Row, 1)                             '
                ListBox2.List(ListBox2.ListCount - 1, 1) = .Cells(rng.Row, 2)   '   Suchergebnis
                ListBox2.List(ListBox2.ListCount - 1, 2) = .Cells(rng.Row, 3)   '   in
                ListBox2.List(ListBox2.ListCount - 1, 3) = .Cells(rng.Row, 4)   '   Ausgabebox
                ListBox2.List(ListBox2.ListCount - 1, 4) = .Cells(rng.Row, 5)   '   übernehmen
                ListBox2.List(ListBox2.ListCount - 1, 5) = .Cells(rng.Row, 6)   '
                ListBox2.List(ListBox2.ListCount - 1, 6) = .Cells(rng.Row, 8)   '
                ListBox2.List(ListBox2.ListCount - 1, 7) = .Cells(rng.Row, 9)   '
                ListBox2.List(ListBox2.ListCount - 1, 8) = rng.Row              '
             End If
             Set rng = .Range("A:K").FindNext(rng)                              ' Nächste Übereinstimmung suchen
          
          Loop While Not rng Is Nothing And rng.Address <strFirst> 0 Then
       ListBox2.ListIndex = 0
    Else
       ListBox2.AddItem "Kein Eintrag!"                                         ' Falls keine Übereinstimmung erscheint: Kein Eintrag
    End If
    Set rng = Nothing
    End Sub
    Code:
    Private Sub CommandButton2_Click()                          ' Löschen des in Suchergebnis ausgewählten Datensatzes
    Dim lngR As Long
    With ListBox2
       If .ListCount = 0 Then Exit Sub
       If .List(.ListIndex, 0) = "" Then Exit Sub
       lngR = CLng(.List(.ListIndex, 8))
       Rows(lngR).Delete
        For IntC = 1 To 8                                                           'Eingabefelder leeren
            Controls("TextBox" & IntC) = ""
        Next
    End With
    ListBox2.RemoveItem ListBox2.ListIndex
    End Sub
    Danke im Voraus.

    Gruß
    Christian
     
    Khelben, 19. Januar 2010
    #1
Thema:

[Excel07] Suchergebnis aus ListBox löschen und Suche akt.

Die Seite wird geladen...
  1. [Excel07] Suchergebnis aus ListBox löschen und Suche akt. - Similar Threads - Excel07 Suchergebnis ListBox

  2. Listbox wird nicht breiter, Schriftgrösse ändert sich

    in Microsoft Excel Hilfe
    Listbox wird nicht breiter, Schriftgrösse ändert sich: Hallo, ich habe ein Formular dessen Breite ich mit der Maus ändern kann. Im Formular habe ich einen Rahmen und darin eine Listbox deren Breite an die Formularbreite angepasst wird....
  3. Benachbarten Wert aus SVERWEIS ausgeben (Spaltenindex = Suchergebnis+1)

    in Microsoft Excel Hilfe
    Benachbarten Wert aus SVERWEIS ausgeben (Spaltenindex = Suchergebnis+1): Hallo liebe Gemeinde, Ich suche in einem Arbeitsblatt (Anrechnung Kollegium) per SVerweis in einer Zeile aus einem anderen Arbeitsblatt ('Anrechnungen nach Grund'!D3:EA3) nach einem Namenskürzel...
  4. Suchergebnis farbig anzeigen

    in Microsoft Excel Hilfe
    Suchergebnis farbig anzeigen: Hallo zusammen, wir benötigen Hilfe. Im Rahmen einer Maßnahme vom AA haben wir ein Straßenverzeichnis unserer Stadt erstellt und eine Suchfunktion(Makro) eingebaut. Erstes Tabellenblatt alle...
  5. Inhalte farbige Zellen in anderes Blatt kopieren, Excel07 und VBA

    in Microsoft Excel Hilfe
    Inhalte farbige Zellen in anderes Blatt kopieren, Excel07 und VBA: Moin Moin, ich bin im VBA noch recht neu und benötige dringend einen Anstoß, wie ich folgendes Problem umsetzen kann. Die erste Zeile eines Zellenbereiches (ca.60 Spalten und 2000 Zeilen) soll...
  6. Excel07-Makro: alle Kombinationen von 0,0 bis 0,9 in 1,0

    in Microsoft Excel Hilfe
    Excel07-Makro: alle Kombinationen von 0,0 bis 0,9 in 1,0: Hallo! Ich möchte für meine Diplomarbeit (leider nicht in Informatik :-)) eine große Tabelle generieren. Diese Tabelle soll 10 Spalten haben. In den Zeilen sollen sich alle möglichen...
  7. excel07 diagramm

    in Microsoft Excel Hilfe
    excel07 diagramm: hay, ich habe mit excel07 ein diagramm erstellt. dort werden die gefahrenen km angezeigt, monatlich. z.b. jan 2.000 feb 3.500 mär 2.279 apr 1.992 usw. jetzt habe ich bei okt aber...
  8. Excel07 Mehrere Spektren in eine excel Tabelle einfügen!!!

    in Microsoft Excel Hilfe
    Excel07 Mehrere Spektren in eine excel Tabelle einfügen!!!: Hallo!! Habe folgendes problem!! Hab ca 600 spektren aufgenommen ascii format und möchte gerne diese in eine excel tabelle aufmachen. Es dauert sehr lange die einzel aufzumachen und einzeln rein...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden