Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1932to1936
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

VBA Kopieren nur bis letzte Zelle?

VBA Kopieren nur bis letzte Zelle?
27.06.2023 12:07:05
Peter

Hallo zusammen,
ich brauche bitte Hilfe, ich finde den Fehler nicht....
Ich habe in A2 Nr bis 30759, ab F2 bis N 2 soll eine Formel rein also schreibe ich diese in F2 und ziehe bis N 2.
Nun soll diese bis zur ersten befüllten Zeile in F2 > N2 (ist aber immer unterschiedlich) kopiert werden, aber .. Excel macht es nicht?? warum?

Vielen Dank!
Peter
Sub Makro4()
' Makro4 Makro
' Lauf1
Range("F2").Select
ActiveCell.Formula2R1C1 = _
"=IFERROR(INDEX(Tabelle1!C[2],AGGREGATE(15,6,ROW(Tabelle1!R2C9:R100000C9)/((Tabelle1!R2C3:R100000C3=RC4)*(Tabelle1!R2C4:R100000C4=RC3)*(RC5>=Tabelle1!R2C1:R100000C1)*(RC5=Tabelle1!R2C2:R100000C2)),1)),"""")"
Range("F2").Select
Selection.AutoFill Destination:=Range("F2:N2"), Type:=xlFillDefault

Dim lngLast As Long
lngLast = Cells(Rows.Count, 1).End(xlUp).Row
'Kopiere die Formel bis zur letzen befüllten Zelle
Range("F2").AutoFill Destination:=Range("F2:N2" & lngLast)
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: VBA Kopieren nur bis letzte Zelle?
27.06.2023 13:06:49
GerdL
Moin Peter!
Range("F2").FormulaR1C1 = _
"=IFERROR(INDEX(Tabelle1!C[2],AGGREGATE(15,6,ROW(Tabelle1!R2C9:R100000C9)/" _
& "((Tabelle1!R2C3:R100000C3=RC4)*(Tabelle1!R2C4:R100000C4=RC3)*" _
& "(RC5>=Tabelle1!R2C1:R100000C1)*(RC5=Tabelle1!R2C2:R100000C2)),1)),"""")"

Range("F2").AutoFill Destination:=Range("F2:N2"), Type:=xlFillDefault
'Kopiere die Formel bis zur letzen befüllten Zelle der Spalte A
Range("F2:N2").AutoFill Destination:=Range("F2:N" & Cells(Rows.Count, 1).End(xlUp).Row)
Gruß Gerd


AW: VBA Kopieren nur bis letzte Zelle?
27.06.2023 13:52:50
Peter
Hallo Gerd,

vielen Dank, jedoch kopiert er immer alles obwohl in Zelle F17 z.B. ein Eintrag ist? Dann muss er bei F16 > N16 aufhören?
Die Spalte A war nur gedacht, das er nicht bis 1 Million Zellen runter kopiert
Vielen Dank für deine Hilfe,
Peter


Anzeige
AW: VBA Kopieren nur bis letzte Zelle?
27.06.2023 14:17:43
GerdL
Hallo Peter,

was F16 > N16 für die Ermittlung der letzten Zeile bedeutet, könntest du erläutern.
Probier mal so. Vielleicht nähern wir uns an.
Range("F2").FormulaR1C1 = _
"=IFERROR(INDEX(Tabelle1!C[2],AGGREGATE(15,6,ROW(Tabelle1!R2C9:R100000C9)/" _
& "((Tabelle1!R2C3:R100000C3=RC4)*(Tabelle1!R2C4:R100000C4=RC3)*" _
& "(RC5>=Tabelle1!R2C1:R100000C1)*(RC5=Tabelle1!R2C2:R100000C2)),1)),"""")"

Range("F2").AutoFill Destination:=Range("F2:N2"), Type:=xlFillDefault
'Kopiere die Formel bis zur an die erste befüllten Zelle der Spalte F
Range("F2:N2").AutoFill Destination:=Range("F2:N" & Cells(2, 6).End(xlDown).Row)
Gruß Gerd


Anzeige
AW: VBA Kopieren nur bis letzte Zelle?
27.06.2023 15:31:04
Peter
Hallo Gerd,
Danke, wenn er jetzt wirklich die letzte Zelle nicht beschreiben würde, dann funktioniert es wie gewünscht.
Das VBA soll quasi von F2:N2 nach unten kopieren solange bis keine leere Zelle mehr kommt bzw. die erste befüllte. Jetzt überschreibt er die Zelle wo befüllt ist und hört dann auf. (Aufhören richtig aber die befüllte Zelle darf nicht überschreiben werden). Ich hoffe ich habe es verständlich erklärt.
Vielen Dank dir,
Peter


AW: VBA Kopieren nur bis letzte Zelle?
27.06.2023 15:42:47
GerdL
Okidoki
Range("F2:N2").AutoFill Destination:=Range("F2:N" & Cells(2, 6).End(xlDown).Row - 1)

Es muss unterhalb von F2 "genügend Luft" sein. :-)

Gruß Gerd


Anzeige
AW: VBA Kopieren nur bis letzte Zelle?
27.06.2023 16:06:11
Peter
Happy happy... vielen herzlichen danke und eine Gute Zeit!!

Peter

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige