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

"Fehler" im VBA

"Fehler" im VBA
07.04.2019 11:37:50
Fred

Hallo Excel-Profis,
ich habe da einen "Fehler" im Code und weis nicht, waran es liegt.
Ich kopiere zusammengefasst von "Basis" (ab Zeile 4) nach "Spiele" (ab Zeile 3)
Angefügt werden dann noch entsprechend Berechnungen.
Das alles klappt auch wie gewollt.
sub Zusammen()
Dim LZ As Long
' kopiert bets nach Spiele
Worksheets("Spiele").Activate
Sheets("Spiele").Range("A3:M2000").ClearContents
With Sheets("Basis")
LZ = .Cells(.Rows.Count, 1).End(xlUp).Row
Union(.Range(.Cells(4, 1), .Cells(LZ, 1)), .Range(.Cells(4, 7), .Cells(LZ, 2))).Copy
End With
ActiveSheet.Cells(3, 1).PasteSpecial xlPasteValues
With Selection
.RemoveDuplicates 1, xlNo
.Sort Key1:=.Cells(1, 1), Order1:=xlAscending, Header:=xlGuess
With Selection.CurrentRegion
With .Columns(.Columns.Count + 1).Resize(, 6)
.Columns(1).FormulaR1C1 = "=CountIf(Basis!C1,RC1)"
.Columns(2).FormulaR1C1 = "=SumIf(Basis!C1,RC1,Basis!C24)"
.Columns(3).FormulaR1C1 = "=SumIf(Basis!C1,RC1,Basis!C25)"
.Columns(4).FormulaR1C1 = "=SumIf(Basis!C1,RC1,Basis!C26)"
.Columns(5).FormulaR1C1 = "=SumIf(Basis!C1,RC1,Basis!C11)"
.Columns(6).FormulaR1C1 = "=SumIf(Basis!C1,RC1,Basis!C18)"
.Formula = .Value
End With
End With
End With
Application.CutCopyMode = False
End Sub
Problem:
Ich kann meine SpaltenÜberschriften nicht in "Spiele", Zeile 2 eintragen.
Wenn ich dies mache, verschieben sich meine Berechnungen nach rechts, zum ende meine Liste, beginnend in Zeile 1
Kann mir jemand bitte den Fehler sagen?
vereinfachtes Beispiel
https://www.herber.de/bbs/user/128991.xlsb
Mit freundlichen Gruß
Fred Neumann

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: "Fehler" im VBA
07.04.2019 14:16:30
Daniel
Hi
nun, das problem ist, dass CurrentRegion den Zellbereich in alle richtungen erweitert, bis er von durchgängigen Leerzeilen oder Leerspalten umschlossen ist.
solange die Zeile 2 leer ist, grenzt sie also deine eingefügten Zellen vom Rest ab, so dass mit CurrentRegion nur der eingefügte Bereich mit Inhalten ausgewählt wird.
Enthält Zeile 2 jedoch Werte, werden diese auch von CurrentRegion erfasst.
Wenn Zeile 2 die Überschriften enthalten soll, kannst du dein Zellbereich auch auf diese Weise anpassen:
With Selection.Resize(Worksheetfunction.CountA(Selection.Columns(1)))
Gruß Daniel
Anzeige
AW: "Fehler" im VBA,- danke Daniel
07.04.2019 15:49:06
Fred
Hallo Daniel,
Super Erklärung!
.. und nu passt es!
Danke für die Mühe!
Gruß
Fred
falscher Beitrag oT
07.04.2019 17:07:23
Hajo_Zi

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige