Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1352to1356
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
Inhaltsverzeichnis

Wert finden und Zeile markieren

Wert finden und Zeile markieren
10.03.2014 16:24:29
Kruse
Hallo Zusammen
ich brauche mal wieder eure Hilfe
Mit unten stehendem Makro suche ich von Tabelle1 aus einen Wert in Tabelle2. das klappt auch alles ganz gut. Nun möchte ich das die Zeile in dem der Wert gefunden wurde markiert wird. Ich kriege das einfach nicht hin
Option Explicit
Dim Zeile As String
Dim Stammdatensheet As String
Dim Bearbeitungssheet As String
'Die Variablen werden einfach hier oben deklariert, damit sie übergreifend verwendbar werden.
Sub Zeileholen()
Dim Suchbegriff As String
Dim Dropdown As String
Dim Namenspalte As String
Zeile = 0
Stammdatensheet = "Tabelle2"
Bearbeitungssheet = "Tabelle1"
Dropdown = "B9"
Namenspalte = "D:D"
On Error Resume Next
Suchbegriff = ThisWorkbook.Sheets(Bearbeitungssheet).Range(Dropdown).Value 'Holt den ausgewählten Wert aus dem Dropdownfeld
If IsNumeric(Suchbegriff) Then
Zeile = WorksheetFunction.Match(--Suchbegriff, Sheets(Stammdatensheet).Range(Namenspalte), 0) 'Ermittelt die Zeile, wo der Name steht
Else
Zeile = WorksheetFunction.Match(Suchbegriff, Sheets(Stammdatensheet).Range(Namenspalte), 0) 'Ermittelt die Zeile, wo der Name steht
End If

Hier soll dann das markieren folgen

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Rows(Zeile).Select ... wenns denn sein muß ...oT
10.03.2014 16:29:32
Matthias

AW: Rows(Zeile).Select ... wenns denn sein muß ...oT
11.03.2014 08:09:28
Kruse
Hallo Matthias
das klappt leider nicht, so wird nämlich in Tabelle 1 die Zeile markiert in der gerade eine Zelle markiert ist. Ich möchte aber das die Zeile markiert wird in der der gefundene Wert in Tabelle 2 steht.
Gruss Peter

Wert finden - Zeile markieren
11.03.2014 10:44:59
Erich
Hi Peter,
hier eine Alternative mit einigen Anmerkungen:

Option Explicit
Dim Zeile As String                    ' Warum String statt Long?
Dim Stammdatensheet As String
Dim Bearbeitungssheet As String
'Die Variablen werden einfach hier oben deklariert, damit sie übergreifend verwendbar werden.
' "Einfach", trotzdem würde ich das nicht tun...
Sub Zeileholen()
Dim Dropdown As String
Dim Namenspalte As String
Dim Suchbegriff   ' As Variant
Dim myRow         ' As Variant
Stammdatensheet = "Tabelle2"
Bearbeitungssheet = "Tabelle1"
Dropdown = "B9"
Namenspalte = "D:D"
'   On Error Resume Next ' weg - tödlich !
With Sheets(Stammdatensheet)
.Activate
'Holt den ausgewählten Wert aus dem Dropdownfeld
Suchbegriff = ThisWorkbook.Sheets(Bearbeitungssheet).Range(Dropdown).Value
If IsNumeric(Suchbegriff) Then Suchbegriff = --Suchbegriff
'Ermittelt die Zeile, wo der Name steht
myRow = Application.Match(Suchbegriff, .Range(Namenspalte), 0)
If IsNumeric(myRow) Then
.Rows(myRow).Select
Else
MsgBox Suchbegriff & " nicht gefunden"
End If
End With
End Sub
"Zeile" würde ich nicht als Variablennamen verwenden. ZEILE() ist eine Excelfkt.
Warum deklarierst du die Zeilennummer als String?
On Error Resume Next: Da sollte man wissen, was man tut.
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich

Anzeige
AW: Wert finden - Zeile markieren
11.03.2014 15:13:48
Kruse
Hallo Erich
ich habe das Makro nicht geschrieben. Es ist schon ein paar Jahre alt und ich weiß gar nicht mehr wer es für mich gemacht hat, deswegen kann ich dir auch nicht sagen warum es so wie es ist geschrieben wurde. ON ERROR hab ich gelöscht.
Leider Funktioniert dein Makro aber nicht .... Laufzeitfehler ... es bleibt bei "myRow = Appli" stehen.
Gruss
Peter

AW: Wert finden - Zeile markieren
11.03.2014 16:08:05
Matthias
Hallo
Rows(myRow).Select

ist doch das Gleiche wie
Rows(Zeile).Select
Zeile war von Dir als Variable vorgegeben.
Erich benutzt myRow (was ich auch so tun würde!)
Ich sehe also meinen Beitrag nicht als falsch an.
Gruß Matthias

Anzeige
@Matthias
11.03.2014 16:19:32
Erich
Hi Matthias,
das sehe ich auch so: Dass wir unterschiedliche Variablennamen verwenden, ändert nichts daran,
dass deine Antwort völlig korrekt war.
Ich mach halt gern auch noch den Oberlehrer... :-)
Grüße aus Kamp-Lintfort von Erich

@Erich ... is schon ok, war ja für Peter ... kwT
11.03.2014 17:19:44
Matthias

Fehlerhinweis bitte genauer
11.03.2014 16:09:02
Erich
Hi Peter,
damit wie nicht unnötig rätselraten müssen:
Könntest du bitte einfach die Infos, die VBA dir zu dem Fehler liefert, an uns weitergeben?
(Fehlernummer, Fehltext/-erklärung). Die Angabe der Codezeile war ja schon gut! :-)
Nebenbei: Bei mir läuft das fehlerlos - ich habe es getestet...
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich

Anzeige
AW: Fehlerhinweis bitte genauer
11.03.2014 18:39:48
Kruse
Hallo Erich
der Fehler lag bei mir, ich hatte die Dropdownzelle falsch benannt. Nun läuft es Perfekt.
Danke an Alle
Gruss
Peter

312 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige