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

Suchen in einem Arbeitsblatt



Excel-Version: 8.0 (Office 97)

Betrifft: Suchen in einem Arbeitsblatt
von: Roland
Geschrieben am: 04.06.2002 - 15:09:16

Hallo

ich verwende folgendes Makro.
Dieses funktioniert solange der Wert gefunden wird.
Wenn der Wert nicht gefunden wird soll auf dem nächsten Arbeitsblatt wieder gesucht werden. Leider bekomme ich so immer einen Laufzeitfehler, wenn der Wert nicht gefunden wird, oder das Makro sucht unendlich.

sub markieren ()
Info = MsgBox("Soll die letzte Partienummer der letzten PÜ markiert werden ?", vbYesNo, "Abfrage der Partienummer")
If Info = 7 Then GoTo Ende
Nummer = InputBox("Hier letzte Partienummer der letzten PÜ eingeben", "Partienummer eingeben")
Sheets("DiagTab").Select
Range("H1").Select
ActiveCell.Value = Nummer
Partie = ActiveCell.Value
For i = 1 To intAnzahl
Zahl = i
Sheets("Tab" & Zahl).Activate
Range("A1").Select
While ActiveCell <> Partie
ActiveCell.Offset(1, 0).Activate
Wend
ActiveCell.Offset(0, 1).Activate
Wert = ActiveCell.Row - 6
Range("A1").Select
Sheets("DiagTab").Select
ActiveSheet.ChartObjects("Diagramm " & Zahl).Activate
ActiveChart.SeriesCollection(1).Select
ActiveChart.SeriesCollection(1).Points(Wert).Select
With Selection.Border
.ColorIndex = 1
.Weight = xlThin
.LineStyle = xlContinuous
End With
With Selection
.MarkerBackgroundColorIndex = 3
.MarkerForegroundColorIndex = 3
.MarkerStyle = xlX
.MarkerSize = 5
.Shadow = False
End With
Next
Ende:
End Sub

Im voraus Danke
Roland

  

Re: Suchen in einem Arbeitsblatt
von: axel.meyer
Geschrieben am: 04.06.2002 - 17:26:19

Hi Roland,

in diesem Bereich Deines Markos:

Sheets("Tab" & Zahl).Activate
Range("A1").Select
While ActiveCell <> Partie
ActiveCell.Offset(1, 0).Activate
Wend

hast Du 65000 Zellen, die durchsucht werden. Das ist also, wenn er keine Zelle findet nicht richtig günstig. Probier mal dieses Makro aus und passe es an Deine Gegebenheiten an.

Gruß, Axel



Sub t()

Dim As Range
Dim bereich As Range

Sheets(1).Select
ActiveSheet.UsedRange.Select
reihe = ActiveSheet.UsedRange.Rows.Count
spalte = ActiveSheet.UsedRange.Columns.Count
MsgBox "reihen" & reihe & "   spalte" & spalte
eingabe = InputBox("was finden?")

Set bereich = Sheets(1).UsedRange


For Each c In bereich
    If c = eingabe Then
            reihe = c.Row
            spalte = c.Column
    End If
Next c
MsgBox "gefunden in: reihe" & reihe & "   spalte" & spalte

End Sub


  

Re: Suchen in einem Arbeitsblatt
von: Roland
Geschrieben am: 04.06.2002 - 18:12:32

Hallo Axel

erstmal Danke für die schnelle Hilfe.
Leider komme ich so noch nicht weiter, die Zelle wo er die Eingabe gefunden hat soll aktiviert werden, da ich die Zeile benötige in der die Eingabe steht.

Roland


  

Re: Suchen in einem Arbeitsblatt
von: axel.meyer
Geschrieben am: 04.06.2002 - 21:37:05

hi roland,

in der variable zeile ist ja die zeile drin, die du danach aktivieren willst. aktivieren kannst du dann zB über diesen befehl:

gruß, axel


Rows(zeile).Select


  

noch mal alle befehle...
von: axel.meyer
Geschrieben am: 04.06.2002 - 21:42:34


Sub Makro1()

zeile = 13
spalte = 2

Rows(zeile).Select
MsgBox ("Zeile ausgewählt")
Columns(spalte).Select
MsgBox ("Spalte ausgewählt")
Cells(zeile, spalte).Select
MsgBox ("Zelle ausgewählt")

End Sub


 

Beiträge aus den Excel-Beispielen zum Thema "Suchen in einem Arbeitsblatt"