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
Inhaltsverzeichnis

Liste erstellen mit array?

Liste erstellen mit array?
26.11.2020 11:30:37
John
Hallo zusammen,
ich möchte aus einem Tabellenblatt (Rechnung) das als Rechnungsformular dient einzelne Felder auslesen und in ein weiteres Tabellenblatt (Forderungen) die Werte in die nächste freie Spalte kopiert.
Die Daten
KdNr= Zelle I3
Name= Zelle B3
Strasse= Zelle B4
usw.
Ausgabe dann in Sheet "Forderungen"
Erste freie Zeile Ax, Bx, Cx
usw.
Bin ich da auf dem richtigen Weg dies mit Arrays zu lösen?
Wie würden das aussehen?
Vielen Dank schonmal!
Grüße
John
,

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

Betreff
Datum
Anwender
Anzeige
AW: Liste erstellen mit array?
26.11.2020 11:43:18
Daniel
Hi
so vielleicht
dim arr(1 to 3)
with Sheets("Rechnung")
arr(1) = .range("I3")
arr(2) = .range("B3")
arr(3) = .Range("B4")
end with
Sheets("Forderungen").Cells(rows.count).Offset(1, 0).resize(1, 3).value = arr
Gruß Daniel
AW: Liste erstellen mit array?
26.11.2020 12:03:34
John
Vielen Dank für die schnelle Antwort.
Ich bekomme einen Laufzeitfehler 1004 "Anwendungs- und ojektdefinierter Fehler" in der Zeile:
Sheets("Forderungen").Cells(Rows.Count).Offset(1, 0).Resize(1, 3).Value = arr
AW: Liste erstellen mit array?
26.11.2020 12:05:39
Herbert_Grom
Hallo John,
probier's mal damit:
Option Base 1
Sub test()
Dim arr(1 To 3, 1)
With Sheets("Rechnung")
arr(1, 1) = .Range("I3")
arr(2, 1) = .Range("B3")
arr(3, 1) = .Range("B4")
End With
iRowIn = Sheets("Forderungen").Cells(Rows.Count, 2).End(xlUp).Row + 1
If iRowIn = 2 Then iRowIn = 1
Sheets("Forderungen").Cells(iRowIn, 2).Resize(3, 1).Value = arr
End Sub
Servus
Anzeige
AW: Liste erstellen mit array?
26.11.2020 12:40:11
John
Hallo Herbert,
vielen Dank, das sieht schon gut aus.
Die Einträge landeten allerdings in Spalte B anstatt Spalte A. Das konnte ich durch folgende Korrektur berichtigen:
Sheets("Forderungen").Cells(iRowIn, 1).Resize(3, 1).Value = arr
Jetzt schreibt er die Daten komplett in Spalte A untereinander (vorher in Spalte B).
Ich möchte aber die Zeile füllen
AW: Liste erstellen mit array?
26.11.2020 12:57:43
Daniel
in einem zweidimesionalen Array ist der erste Index der Zeilen-Index und der zweite Index der Spaltenindex.
du müsstest hier also Zeilen und Spalten tauschen:
dim arr(1 to 1, 1 to 3)
arr(1, 2) = .Range("B3")
das eindimensionale Array wie von mir ursprünglich verwendet funktionert auch und verhält sich in diesem Fall wie ein zweidimensionales Array mit einer Zeile, nur dass du halt den Zeilenindex nicht angeben musst.
Gruß Daniel
Anzeige
AW: Liste erstellen mit array?
26.11.2020 13:18:07
Herbert_Grom
Dann mach eben Resize(1, 3)
Servus
AW: Liste erstellen mit array?
26.11.2020 13:34:03
John
Das hatte ich versucht, er schreibt die erste Zelle 3x
AW: Liste erstellen mit array?
26.11.2020 13:36:37
John
Danke Daniel, funktioniert jetzt!
AW: Liste erstellen mit array?
26.11.2020 12:33:05
Daniel
sorry, da fehlt der Sprung nach oben, so wie die Spaltennummer:
Sheets("Forderungen").Cells(Rows.Count, 1).End(xlup).Offset(1, 0).Resize(1, 3).Value = arr
Gruß Daniel

304 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige