Informationen und Beispiele zum Thema MsgBox | |
---|---|
![]() |
MsgBox-Seite mit Beispielarbeitsmappe aufrufen |
Betrifft: Zeile finden per VBA
von: reinhardt springer
Geschrieben am: 22.01.2010 13:45:23
Hallo.
Ich rufe mir mit SVERWEIS einen Datensatz aus TB1 auf. Die Sätze stehen hier Zeilenweise, in Spalte A
ist eine fortlaufende Nummer in 001, 002 ...)
In TB2 errechne ich neue Werte, die ich in TB1 wieder per VBA in die entsprechende Zeile des Datensatzes einfügen möchte.
Mein Problem:
Mit der IndexNr. des SVERWEISES z.B. 002 lande ich mit dem Cursor nur in TB1 Spalte A2.
Die Datenzeilen beginnen aber erst in Zeile 7.
Also müßte ich irgenwie die Spalte A, TB1 durchsuchen lassen mit der Frage:
"In welcher Zeile steht in Spalte A der Datensatz 002"
Wer kann mir dabei bitte helfen?
Gruß Reinhardt.
Betrifft: AW: Zeile finden per VBA
von: Rudi Maintaire
Geschrieben am: 22.01.2010 13:53:52
Hallo,
Zeile=Application.Match("002",sheets("Tabelle1").Columns(1),0)
Gruß
Rudi
Betrifft: AW: Zeile finden per VBA
von: reinhardt springer
Geschrieben am: 22.01.2010 14:12:31
Hallo!
Ich habe eine Fehlermeldung: "Typen unverträglich"
Sub Test() Dim ZEILE As Integer Sheets("TB2").Select nr = Range("Z8").Text >>(002) Sheets("TB1").Select ZEILE = Application.Match(Nr, Sheets("Daten").Columns(1), 0) Range("A" & ZEILE).Select End Sub
Betrifft: Dann kommt
von: Rudi Maintaire
Geschrieben am: 22.01.2010 14:39:17
'002' nicht in Daten vor. Sind die führenden 0 nur Format?
Gruß
Rudi
Betrifft: Excel sucht nach den Werten, die tatsächlich in
von: Daniel
Geschrieben am: 22.01.2010 19:11:33
den Zellen stehen, und nicht nach den Zeichen, die angezeigt werden.
.Text gibt dir den anzeigten Zellinhalt zurück und zwar immer als STRING
.Value gibt den tatsächlichen Zellinhalt zurück, je nach Inhalt als String oder Zahl.
daher solltest du dein Makro so abändern:
nr = Range("Z8").Value
dann müsste es funktioniern.
Gruß, Daniel
Betrifft: trotzdem die gleich Fehlermeldung
von: reinhardt springer
Geschrieben am: 22.01.2010 14:59:00
In TB Daten ist die Spalte als benutzerdef. Format mit 000 hinterlegt.
Das habe ich einmal auf Standard geändert, trotzdem die gleich Fehlermeldung.
Betrifft: AW: trotzdem die gleich Fehlermeldung
von: Tino
Geschrieben am: 22.01.2010 15:43:17
Hallo,
Du darft nicht nach "002" suchen sondern nach 2
Dim Zeile As Variant 'nicht Integer !!! Zeile = Application.Match(2, Sheets("Tabelle1").Columns(1), 0) If IsNumeric(Zeile) Then MsgBox "gefunden un Zeile " & Zeile Else MsgBox "nicht gefunden" End IfGruß Tino
Betrifft: Das war es! Vielen DAnk an beide!
von: reinhardt springer
Geschrieben am: 22.01.2010 16:41:01
.