Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1792to1796
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
Werte aus Zelle in ein andere Tabelle
16.11.2020 21:19:56
Heino
Hallo,
ich möchte gerne Werte aus einer Tabelle in eine andere Tabelle in die nächste freie Zeile per cmd Button schreiben. In der Spalte A soll eine fortlaufende Nummer generiert werden. Bekomme immer einen Laufzeitfehler 13.
Wäre nett wenn mir jemand den Fehler erklären kann.
Füge mal den Code an:
Private Sub CommandButton1_Click()
' **********Übertrag von sperr1 zu Liste************
Dim wksOrig As Worksheet
Dim wksStore As Worksheet
Dim lngLastRow As Long
Set wksOrig2 = Worksheets("Sperr1")
Set wksStore = Worksheets("Liste")
With wksStore
wksStore.Range("A2") = 0
ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Select
ActiveCell.Offset(1, 0) = ActiveCell + 1
.Cells(lngLastRow, 3) = wksOrig.Range("A5")
.Cells(lngLastRow, 4) = wksOrig.Range("E24")
.Cells(lngLastRow, 5) = wksOrig.Range("F2")
.Cells(lngLastRow, 6) = wksOrig.Range("H2")
.Cells(lngLastRow, 7) = wksOrig.Range("C4")
.Cells(lngLastRow, 8) = wksOrig.Range("H4")
.Cells(lngLastRow, 9) = wksOrig.Range("D2")
.Cells(lngLastRow, 10) = wksOrig.Range("C15")
.Cells(lngLastRow, 11) = wksOrig.Range("D15")
.Cells(lngLastRow, 12) = wksOrig.Range("C16")
.Cells(lngLastRow, 13) = wksOrig.Range("D16")
.Cells(lngLastRow, 14) = wksOrig.Range("C17")
.Cells(lngLastRow, 15) = wksOrig.Range("E13")
.Cells(lngLastRow, 16) = wksOrig.Range("H13")
.Cells(lngLastRow, 17) = wksOrig.Range("C9")
.Cells(lngLastRow, 18) = wksOrig.Range("D9")
.Cells(lngLastRow, 19) = wksOrig.Range("E9")
.Cells(lngLastRow, 20) = wksOrig.Range("F9")
.Cells(lngLastRow, 21) = wksOrig.Range("G9")
.Cells(lngLastRow, 22) = wksOrig.Range("H9")
.Cells(lngLastRow, 23) = wksOrig.Range("C12")
.Cells(lngLastRow, 24) = wksOrig.Range("D12")
.Cells(lngLastRow, 25) = wksOrig.Range("E12")
.Cells(lngLastRow, 26) = wksOrig.Range("F12")
.Cells(lngLastRow, 27) = wksOrig.Range("G12")
.Cells(lngLastRow, 28) = wksOrig.Range("H12")
.Cells(lngLastRow, 29) = wksOrig.Range("F6") 'Schichtführer/Mitarbeiter
.Cells(lngLastRow, 30) = wksOrig.Range("D6")
End With

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Werte aus Zelle in ein andere Tabelle
16.11.2020 21:31:07
AlterDresdner
Hallo Heino,
die Variable lngLastRow ist von Dir nicht belegt, also =0, deshalb der Fehler.
Du könntest die ersten 3 Zeilen nach With (wahrscheinlich) ersetzen durch
.cells(2,1)=.cells(2,1)+1'Zelle A2 um 1 hochzählen
lngLastRow=.Cells(Rows.Count, 1).End(xlUp).row+1'erste freie Zeile in wksStore
Gruß der AlteDresdner
AW: Werte aus Zelle in ein andere Tabelle
17.11.2020 20:02:45
Heino
Hallo,
bekomme jetzt die Fehlermeldung:
Laufzeitfehler 91
Objektvariable oder With-Blockvariable nicht festgelegt.
Gruß
Heino
AW: Werte aus Zelle in ein andere Tabelle
18.11.2020 10:30:51
Heino
Hallo,
bekomme jetzt die Fehlermeldung:
Laufzeitfehler 91
Objektvariable oder With-Blockvariable nicht festgelegt.
Gruß
Heino
Anzeige
AW: Werte aus Zelle in ein andere Tabelle
18.11.2020 11:20:22
AlterDresdner
Hallo Heino,
das ist wksOrig. Du belegst am Anfang wksOrig2:
Die Anwendung von Option Explicit hätte Dir diesen Fehler erspart...
Gruß der ALteDresdner
AW: Werte aus Zelle in ein andere Tabelle
18.11.2020 20:00:18
Heino
Hallo,
stehe echt auf dem Schlauch.
Kannst Du mir bitte den Anfang des Code's noch einmal erklären.
Danke im Voraus.
Heino
AW: Werte aus Zelle in ein andere Tabelle
22.11.2020 20:59:06
AlterDresdner
Hallo Heino,
hier der kommentierte Anfang des Codes.
  Set wksOrig = Worksheets("Sperr1") 'Objekt, mit dem Sheets Sperr1 angesprochen werden kann
Set wksStore = Worksheets("Liste") '...Liste...
With wksStore
'durch das With ersparst Du bei allen nachfolgenden Zeilen das Schreiben von wksStore
'.cells(2,1) ist dann identisch mit wksStore.Cells(2,1) oder Sheets("Liste").Range("A2")
.Cells(2, 1) = .Cells(2, 1) + 1 'Zelle A2 in Liste um 1 hochzählen
lngLastRow = .Cells(Rows.Count, 1).End(xlUp).Row + 1 'erste freie Zeile in Liste
.Cells(lngLastRow, 3) = wksOrig.Range("A5") 'Übernahme aus Sheet Sperr1

Ich denke, den rest kann Dir die Hilfe sagen...
Gruß der ALteDresdner
Anzeige

304 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige