Anzeige
Archiv - Navigation
1524to1528
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

Objectvariable nicht festgelegt

Objectvariable nicht festgelegt
11.11.2016 12:19:54
Oisse
Hallo Zusammen,
folgenden Code habe ich geschrieben, der leider leider nicht funktioniert.
Es kommt immer wieder Objektvariable nicht festgelegt.
Vor lauter rumprobieren kenn ich mich jetzt schon gar nicht mehr aus.
Zum Hintergrund.
In der Tabelle Artikel sollen Einträge gefunden werden mit dem Eintrag in der Tabelle Rechnung in Zelle H16.
Alle Zeilen sollen in der Tabelle Artikel markiert werden, die diesen Eintrag haben.
Anschließend soll in den markierten Zeilen in Spalte 17 der Eintrag aus Zelle C9 aus der Tabelle Rechnung eingetragen werden.
Warum läuft der Code nicht? Was habe ich denn hier nicht festgelegt?
Kann bitte mal jemand drüberschauen
Option Explicit
Private Sub NamenEinfügen()
Dim wsSearch As Worksheet
Dim Tbl1 As Worksheet
Dim Tbl4 As Worksheet
Dim wkb As Workbook
Dim rng_Row As Range
Dim Finde As String
Dim c As Range
Dim firstAddress As String
wkb = ThisWorkbook
Tbl1 = "Rechnung"
Tbl4 = "Artikel"
Finde = ThisWorkbook.Sheets("Rechnung").Range("H16")
Set wsSearch = Sheets("Artikel")
With wsSearch.Range("X:X")
Set c = .Find(Finde, LookIn:=xlValues, LookAt:=xlWhole)
If Not c Is Nothing Then
firstAddress = c.Address
Range(c.Address).Select      'Die Zeile in der der zu suchende Wert ist  _
markieren
Do
Union(Selection, Range(c.Address)).Select     'alle Zeilen in denen der zu  _
suchende Wert vorkommt markiere
'Finde den nächsten passenden Eintrag
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address  firstAddress
End If
End With
For Each rng_Row In Selection.Row
Sheets("Artikel").Cells(rng_Row.Row, 17).Value = Sheets("Rechnung").Cells("C9").Value
Next
End Sub

Danke
Gruß Oisse

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Objectvariable nicht festgelegt
11.11.2016 12:23:13
Rudi
Hallo,
z.B.
Set Tbl1 = Worksheets("Rechnung")
Gruß
Rudi
AW: Objectvariable nicht festgelegt
11.11.2016 12:47:36
Oisse
Hallo Rudi,
danke für deinen Hinweis
Ich habe zwar jetzt einiges angepasst aber mit dem rng_Row, das krieg ich nicht hin.
Was muss ich denn hier schreiben. Es kommt: Object erforderlich
Option Explicit
Sub NamenEinfügen()
Dim wsSearch As Worksheet
Dim Tbl1 As Worksheet
Dim Tbl4 As Worksheet
Dim wkb As Workbook
Dim rng_Row As Range
Dim Finde As String
Dim c As Range
Dim firstAddress As String
Set wkb = ThisWorkbook
Set Tbl1 = Worksheets("Rechnung")
Set Tbl4 = Worksheets("Artikel")
Set wsSearch = wkb.Sheets("Artikel")
Finde = wkb.Sheets("Rechnung").Range("H16")
Set wsSearch = Sheets("Artikel")
With wsSearch.Range("X:X")
Set c = .Find(Finde, LookIn:=xlValues, LookAt:=xlWhole)
If Not c Is Nothing Then
firstAddress = c.Address
Range(c.Address).Select      'Die Zeile in der der zu suchende Wert ist  _
markieren
Do
Union(Selection, Range(c.Address)).Select     'alle Zeilen in denen der zu  _
suchende Wert vorkommt markiere
'Finde den nächsten passenden Eintrag
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address  firstAddress
End If
End With
For Each rng_Row In Selection.Row
Sheets("Artikel").Cells(rng_Row.Row, 17).Value = Sheets("Rechnung").Cells("C9").Value
Next
End Sub

Anzeige
AW: Objectvariable nicht festgelegt
11.11.2016 13:02:48
Rudi
Hallo,
du kannst nicht einfach wild vor dich hin programmieren. Du musst dich schon an die korrekte Syntax halten.
rngRow ist eine Range-Objekt, Selection.Row ein Long-Wert.
 For Each rng_Row In Selection

wird funktionieren. Aber ob du das willst?
Gruß
Rudi
AW: Objectvariable nicht festgelegt
11.11.2016 13:16:15
Oisse
Danke Rudi,
jetzt kommt aber die Fehlermeldung:
Ungültiger Prozeduraufruf oder ungültiges Argument in dieser Zeile:
Sheets("Artikel").Cells(rng_Row.Row, 17).Value = Sheets("Rechnung").Cells("C9").Value

In der Tabelle Artikel werden die Fundstellen zwar markiert aber die Eintragung wird nicht vorgenommen
Kannst du mir bitte noch erklären warum und was ich hier ändern muss
Anzeige
AW: Objectvariable nicht festgelegt
11.11.2016 13:16:24
Oisse
Danke Rudi,
jetzt kommt aber die Fehlermeldung:
Ungültiger Prozeduraufruf oder ungültiges Argument in dieser Zeile:
Sheets("Artikel").Cells(rng_Row.Row, 17).Value = Sheets("Rechnung").Cells("C9").Value

In der Tabelle Artikel werden die Fundstellen zwar markiert aber die Eintragung wird nicht vorgenommen
Kannst du mir bitte noch erklären warum und was ich hier ändern muss
Range("C9").Value owT
11.11.2016 13:20:55
Rudi
AW: Range("C9").Value owT
11.11.2016 13:29:22
Oisse
Danke. Funktioniert einwandfrei.
Vielleicht darf ich dir noch eine Verständnisfrage stellen.
Warum wir in der Tabelle Rechnung die Zelle x108 markiert.
In x108 ist der erste Wert in der Tabelle Artikel, den er findet.
Aber warum markiert er diese Zelle auch in der Tabelle Rechnung?
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige