Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema InputBox
BildScreenshot zu InputBox InputBox-Seite mit Beispielarbeitsmappe aufrufen
Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

Joesef E.! Anpassung der Spalten gescht | Herbers Excel-Forum


Betrifft: Joesef E.! Anpassung der Spalten gescht von: Fenja
Geschrieben am: 22.11.2009 12:42:14

Hallo Josef,

gestern hast du mir nachfolgenden Code generiert, der auch wunderbar funktioniert. Er beschränkt sich jedoch in der Suche auf die Spalte 4.
Es hat sich als sinnvoll herausgestellt, dass man den Begriff in mehreren Spalten gleichzeitig suchen können sollte.

Ich habe mich mal daran versucht, es selbst hinzubekommen, aber da bin ich mangels VBA -Fähigkeiten gescheitert. Könntest du es so anpassen, dass in Spalten 4 bis 10 gesucht wird und dass man den Suchbegriff nicht abslut identisch schreiben muss. Quasi mit Wildcards vor/hinter des Suchbegriffes arbeiten kann.

Entschuldige, dass ich dich noch mal nerve, aber ich bekomme es nicht hin.

Danke Jo.

Sub Zeilen_ausblenden_die_nicht_gesucht_werden()
  Dim lngRow As Long, lngLast As Long
  Dim strFind As String, lngDate As Long, strS As String
  Dim rngHide As Range
  
  strFind = InputBox("Geben Sie den Suchbegriff oder ein Datum ein", "Suchbegriff", "Auswertung" _
 _
 _
)
  
  If strFind = "" Then
    MsgBox "Abbruch!" & vbLf & "Ungültiger Suchbegriff", vbExclamation, "Fehler"
    Exit Sub
  End If
  
  If IsDate(strFind) Then
    lngDate = CDate(strFind)
    strS = ""
  Else
    lngDate = 99999
    strS = strFind
  End If
  
  With Sheets("EG aktuell")
    lngLast = Application.Max(3, .cells(.Rows.Count, 4).End(xlUp).Row)
    .Range(.cells(3, 1), .cells(lngLast, 1)).EntireRow.Hidden = False
    For lngRow = 3 To lngLast
      If .cells(lngRow, 4).Value < lngDate Or Not IsDate(.cells(lngRow, 4).Value) Then
        If Application.CountIf(.Range(.cells(lngRow, 1), .cells(lngRow, 4)), strFind) = 0 Then
          If rngHide Is Nothing Then
            Set rngHide = .Rows(lngRow)
          Else
            Set rngHide = Union(rngHide, .Rows(lngRow))
          End If
        End If
      End If
    Next
  End With
  
  If Not rngHide Is Nothing Then rngHide.EntireRow.Hidden = True
  
  Set rngHide = Nothing
End Sub

  

Betrifft: AW: Joesef E.! Anpassung der Spalten gescht von: Josef Ehrensberger
Geschrieben am: 22.11.2009 12:50:39

Hallo Joachim,

das Datum wird aber nachwievor nur in Spalte D gesucht!

Wenn du als Suchbegriff * eingibst, werden alle Zeilen eingeblendet.

' **********************************************************************
' Modul: Modul1 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Sub Zeilen_ausblenden_die_nicht_gesucht_werden()
  Dim lngRow As Long, lngLast As Long
  Dim strFind As String, lngDate As Long, strS As String
  Dim rngHide As Range
  
  strFind = InputBox("Geben Sie den Suchbegriff oder ein Datum ein", "Suchbegriff", "Auswertung")
  
  If strFind = "" Then
    MsgBox "Abbruch!" & vbLf & "Ungültiger Suchbegriff", vbExclamation, "Fehler"
    Exit Sub
  End If
  
  If IsDate(strFind) Then
    lngDate = CDate(strFind)
    strS = ""
  Else
    lngDate = 99999
    strS = strFind
  End If
  
  With Sheets("EG aktuell")
    lngLast = Application.Max(3, .Cells(.Rows.Count, 4).End(xlUp).Row)
    .Rows.Hidden = False
    For lngRow = 3 To lngLast
      If .Cells(lngRow, 4).Value < lngDate Or Not IsDate(.Cells(lngRow, 4).Value) Then
        If Application.CountIf(.Range(.Cells(lngRow, 1), .Cells(lngRow, 10)), "*" & strFind & "*") = 0 Then
          If rngHide Is Nothing Then
            Set rngHide = .Rows(lngRow)
          Else
            Set rngHide = Union(rngHide, .Rows(lngRow))
          End If
        End If
      End If
    Next
  End With
  
  If Not rngHide Is Nothing Then rngHide.EntireRow.Hidden = True
  
  Set rngHide = Nothing
End Sub



Gruß Sepp



  

Betrifft: AW: Joesef E.! Danke von: Fenja
Geschrieben am: 22.11.2009 13:08:51

Vielen Dank, das funktioniert super. Danke!!!


Beiträge aus den Excel-Beispielen zum Thema "Joesef E.! Anpassung der Spalten gescht"