Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1780to1784
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
VBA Werte in Spalte suchen
15.09.2020 07:38:09
Sergen
Guten Morgen,
ich benötige Hilfe bei meinem VBA Code..
Und zwar habe ich eine Suchfunktion eingebaut. Der eingegebene Wert wird in der 1. Spalte gesucht und z.B. der Wert 3 Spalten weiter rechts ausgegeben. Das habe ich mit der Funktion Offset gemacht. Nun möchte ich jedoch, dass ich die Spalte mit dem "Namen" anspreche, da es sein kann, dass in Zukunft der Wert nicht mehr in der Spalte 3 weiter rechts, sondern 7 Spalten weiter rechts stehen wird. Hier ein Ausschnitt wie ich es habe.
If Not Sachnummer Is Nothing Then 'Falls die Sachnummer gefunden wurde
Dim Spezifikation As Range 'setze Spezifikation als Variable
Dim beh?lter As Range 'setze beh?lter als Variable
Dim Prozent As Range 'setze Prozent als Variable
Dim L?nge As Range 'setze L?nge als Variable
Set beh?lter = Sheets("Sachnummern").Columns(1).Find(what:=TextBox1.Text, lookat:=xlWhole)
Set Spezifikation = Sheets("Spezifikationen").Columns(1).Find(what:=Sachnummer.Offset(0, 6).Value, lookat:=xlWhole)
If Not Spezifikation Is Nothing Then 'Wenn das Feld der Spezifikation nicht leer ist, dann
Sheets("Kontrolle").TextBoxR.Caption = Spezifikation.Offset(0, 2).Value
Sheets("Kontrolle").TextBoxa.Caption = Spezifikation.Offset(0, 3).Value
Sheets("Kontrolle").TextBoxB.Caption = Spezifikation.Offset(0, 4).Value
Sheets("Kontrolle").TextBoxc.Caption = Spezifikation.Offset(0, 5).Value
Vielen dank im Voraus
MFG Sergen

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Werte in Spalte suchen
15.09.2020 08:07:16
ChrisL
Hi
Ich vermute in etwa so...
Sachnummer.Offset(0, Range("myName").Column - 1).Value
cu
Chris
AW: VBA Werte in Spalte suchen
15.09.2020 08:15:15
Sergen
Hallo, erst mal vielen Dank für die schnelle Rückmeldung.
Leider funktioniert es so auch nicht. Es wird folgende Fehlermeldung angezeigt:
Die Methode range für das Objekt _Global ist fehlgeschlagen. :(
AW: VBA Werte in Spalte suchen
15.09.2020 08:45:45
fcs
Hallo Sergen,
du musst dann vor der Zeile mit dem Offset die Spalte mit dem Namen suchen und dann den Offset entsprechend anpassen.
LG
Franz
Sub aa()
Dim Spezifikation As Range 'setze Spezifikation als Variable
Dim behälter As Range 'setze behälter als Variable
Dim Prozent As Range 'setze Prozent als Variable
Dim Länge As Range 'setze L?nge als Variable
Dim lngspalte As Long
If Not Sachnummer Is Nothing Then 'Falls die Sachnummer gefunden wurde
Set behälter = Sheets("Sachnummern").Columns(1).Find(What:=TextBox1.Text, lookat:=xlWhole)
lngspalte = fncSpalte(wks:=Worksheets("Spezifikation"), zeile:=1, varSuch:="Textxy")
If lngspalte = 0 Then Exit Sub
Set Spezifikation = Sheets("Spezifikationen").Columns(1).Find(What:=Sachnummer.Offset(0, _
lngspalte - 1).Value, lookat:=xlWhole)
If Not Spezifikation Is Nothing Then 'Wenn das Feld der Spezifikation nicht leer ist, dann
Sheets("Kontrolle").TextBoxR.Caption = Spezifikation.Offset(0, 2).Value
Sheets("Kontrolle").TextBoxa.Caption = Spezifikation.Offset(0, 3).Value
Sheets("Kontrolle").TextBoxB.Caption = Spezifikation.Offset(0, 4).Value
Sheets("Kontrolle").TextBoxc.Caption = Spezifikation.Offset(0, 5).Value
End If
End If
End Sub
Function fncSpalte(wks As Worksheet, zeile As Long, varSuch) As Long
'Ermittelt in der Zeile des Tabellenblatts die Nummer der Spalte mit dem Suchbegriff
Dim rngSpalte As Range
With wks
Set rngSpalte = .Rows(zeile).Find(What:=varSuch, LookIn:=xlValues, lookat:=xlWhole)
End With
If rngSpalte Is Nothing Then
fncSpalte = 0
MsgBox "Suchtext """ & varSuch & """ in Zeile " & zeile & " in Blatt """ & wks.Name _
& """ nicht gefunden",  vbOKOnly, "Spaltentitel suchen"
Else
fncSpalte = rngSpalte.Column
End If
End Function

Anzeige

332 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige