Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1252to1256
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
Per InputBox suchen & Werte ausgeben
Heinz
Hallo Leute
Ich möchte per InputBox einen Namen suchen,die Namen stehen in den Sheets Jänner bis Dezember in A3:A154
aber unterschiedlich. Zb. Im jänner in A10, im Oktober in A15 im Dezember in A40
Nun sollte die Fundspalte Jänner im Sheets "MA" in A3:AG3
Im Sheets Februar in A5:AG5 usw kopiert werden,mit Formaten,Kommentare usw.
Könnte mir bitte jemand helfen?
Gruß
Heinz
Sub Suche_Namen()
Dim iIndex%, strSuch_Name$
strSuch_Name = InputBox("Geben Sie den Namen ein den Sie suchen möchten", "Name Suchen")
If StrPtr(strSuch_Name) = 0 Then Exit Sub
With Worksheets(1)
.Range("A2", .Cells(.Rows.Count, .UsedRange.Columns.Count)).ClearContents
End With
For iIndex = 2 To Worksheets.Count
Find_And_Copy Worksheets(iIndex).Columns(1), strSuch_Name
Next
End Sub
Sub Find_And_Copy(rngBereich As Range, strSuch_Name$)
Dim sErste$, rngCell As Range
Set rngCell = rngBereich.Find(What:=strSuch_Name, LookIn:=xlValues, LookAt:=xlWhole, _
SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False)
If Not rngCell Is Nothing Then
sErste = rngCell.Address
With Worksheets(1)
Do
rngCell.EntireRow.Copy .Cells(.Rows.Count, 1).End(xlUp).Offset(1, 0)
Set rngCell = rngBereich.FindNext(rngCell)
Loop While sErste  rngCell.Address
End With
End If
End Sub

AW: Per InputBox suchen & Werte ausgeben
18.03.2012 17:02:00
Josef

Hallo Heinz,
ungetestet.
Sub Suche_Namen()
  Dim iIndex%, strSuch_Name$
  
  strSuch_Name = InputBox("Geben Sie den Namen ein den Sie suchen möchten", "Name Suchen")
  
  If StrPtr(strSuch_Name) = 0 Then Exit Sub
  
  With Worksheets(1)
    .Range("A2", .Cells(.Rows.Count, .UsedRange.Columns.Count)).ClearContents
    
    For iIndex = 2 To Worksheets.Count
      Find_And_Copy Worksheets(iIndex).Columns(1), strSuch_Name, .Cells(iIndex * 2 - 1, 1)
    Next
  End With
  
End Sub


Sub Find_And_Copy(rngBereich As Range, strSuch_Name$, Destination As Range)
  Dim rngCell As Range
  
  Set rngCell = rngBereich.Find(What:=strSuch_Name, LookIn:=xlValues, LookAt:=xlWhole, _
    SearchOrder:=xlByRows, SearchDirection:=xlNext, _
    MatchCase:=False, SearchFormat:=False)
  
  If Not rngCell Is Nothing Then rngCell.EntireRow.Copy Destination
  
  Set rngCell = Nothing
End Sub




« Gruß Sepp »

Anzeige
AW: Per InputBox suchen & Werte ausgeben
18.03.2012 17:10:38
Heinz
Hallo Josef
Leider nicht das richtige
Im Sheets "MA" sollte mit der InbutBox der Name ausgewählt werden,& und von den Sheets Jänner bis Dezember in "MA eingetragen werden.
Habe mal eine Datei angehängt.
Danke Heinz
https://www.herber.de/bbs/user/79426.zip
AW: Per InputBox suchen & Werte ausgeben
18.03.2012 17:22:20
Josef

Hallo Heinz,
"Leider nicht das richtige"
Na deine Datei hat mit deiner Beschreibung auch nicht viel gemein.
https://www.herber.de/bbs/user/79428.zip

« Gruß Sepp »

Anzeige
AW: Per InputBox suchen & Werte ausgeben
18.03.2012 17:25:41
Heinz
Hallo Josef
Na deine Datei hat mit deiner Beschreibung auch nicht viel gemein.
JAAA da hast du auch wieder recht.
Jetzt passt es aber genau.
Recht herzlichen Dank.
Gruß
Heinz
AW: Per InputBox suchen & Werte ausgeben
18.03.2012 17:43:10
Heinz
Hallo Josef
Da ich in meiner Arbeitsmappe noch mehrere Sheets mit den Namen habe,könnte man das nicht mit den
Sheets eingrenzen.
Der Sheets "MA" ist auch nicht der 1 Sheets. So das man Explicit mit Sheets "MA" ansprechen könnte?
Gruß
Heinz
Set mySheets = Sheets(Array("Jänner", "Februar", "März", "April", _
"Mai", "Juni", "Juli", "August", _
"September", "Oktober", "November", "Dezember"))

Anzeige
AW: Per InputBox suchen & Werte ausgeben
18.03.2012 17:49:56
Josef

Hallo Heinz,
klar geht das.
' **********************************************************************
' Modul: Modul1 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Sub Suche_Namen()
  Dim iIndex%, strSuch_Name$
  Dim vntSheets As Variant
  Dim lngCalc As Long
  
  On Error GoTo ErrExit
  
  With Application
    .ScreenUpdating = False
    .EnableEvents = False
    lngCalc = .Calculation
    .Calculation = xlCalculationManual
    .DisplayAlerts = False
  End With
  
  vntSheets = Array("Jänner", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", _
    "September", "Oktober", "November", "Dezember")
  
  strSuch_Name = InputBox("Geben Sie den Namen ein den Sie suchen möchten", "Name Suchen")
  
  If StrPtr(strSuch_Name) = 0 Then GoTo ErrExit
  
  With Worksheets("MA")
    For iIndex = 0 To UBound(vntSheets)
      .Rows(iIndex * 4 + 3).ClearContents
      Find_And_Copy Worksheets(vntSheets(iIndex)).Columns(1), strSuch_Name, .Cells(iIndex * 4 + 3, 1)
    Next
  End With
  
  ErrExit:
  
  With Err
    If .Number <> 0 Then
      MsgBox "Fehler in Prozedur:" & vbTab & "'Suche_Namen'" & vbLf & String(60, "_") & vbLf & vbLf & _
        IIf(Erl, "Fehler in Zeile:" & vbTab & Erl & vbLf & vbLf, "") & "Fehlernummer:" & vbTab & _
        .Number & vbLf & vbLf & "Beschreibung:" & vbTab & .Description & vbLf, vbExclamation + _
        vbMsgBoxSetForeground, "VBA - Fehler in Modul - Modul1"
      .Clear
    End If
  End With
  
  On Error GoTo 0
  
  With Application
    .ScreenUpdating = True
    .EnableEvents = True
    .Calculation = lngCalc
    .DisplayAlerts = True
  End With
  
End Sub



Sub Find_And_Copy(rngBereich As Range, strSuch_Name$, Destination As Range)
  Dim rngCell As Range
  
  Set rngCell = rngBereich.Find(What:=strSuch_Name, LookIn:=xlValues, LookAt:=xlWhole, _
    SearchOrder:=xlByRows, SearchDirection:=xlNext, _
    MatchCase:=False, SearchFormat:=False)
  
  If Not rngCell Is Nothing Then rngCell.EntireRow.Copy Destination
  
  Set rngCell = Nothing
End Sub



« Gruß Sepp »

Anzeige
AW: Per InputBox suchen & Werte ausgeben
18.03.2012 17:56:00
Heinz
Hallo Josef
Jetzt ist es perfekt !!
Recht herzlichen DANK.
Gruß
Heinz
AW: Per InputBox suchen & Werte ausgeben
19.03.2012 07:04:44
Heinz
Hallo Josef
Ich möchte dich nicht überstrapazieren,nur ist mir in der Nacht eine Idee gekommen.
Wenn ich in den Sheets Jänner bis Dezember in A3:A154 einen Dopelklick mache,das der Name dann automatisch
in die InputBox geladen wird,und der Sheets "MA" aktiv ist.
Nur wenn du möchtest.
Danke Heinz
AW: Per InputBox suchen & Werte ausgeben
19.03.2012 07:29:52
Heinz
Hallo
Soweit bin ich schon gekommen.
Jetzt bräuchte ich nur das der Wert von A3:A154 in der InputBox eingetragen wird.
Gruß
Heinz
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Target, Range("A3:A154")) Is Nothing Then
Cancel = True
Sheets("MA").Activate
End If
Call Suche_Namen
End Sub

Anzeige
Geschlossen. Danke Josef
19.03.2012 08:45:50
Heinz

305 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige