Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Excel vba zahen verschieben

Forumthread: Excel vba zahen verschieben

Excel vba zahen verschieben
22.11.2022 15:22:44
Fabian
Liebes Forum,
Ich gerate hier zum ersten mal mit excel Van in Kontakt und brauche Hilfe. Ich habe eine Liste, mit produktnamen und einer Stückzahl darunter. Diese Stückzahl soll nun ein Feld nach rechts und ein Feld nach oben verschoben werden, sodass die Stückzahl daneben liegt. Die Zahlen sollen wenn möglich aus der vorherigen Zelle gelöscht werden.
Über jede Hilfe bin ich sehr dankbar!
Liebe Grüße
Fabian
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Excel vba zahen verschieben
22.11.2022 15:30:11
Rudi
Hallo,
Liste beginnend in A1.
C1: =INDEX(A:A;ZEILE()*2-1)
D1: =INDEX(A:A;ZEILE()*2)
und runter kopieren.
Gruß
Rudi
AW: Excel vba zahen verschieben
22.11.2022 15:33:15
Daniel
Hi
hier mal eine einfache Variante.
bei längeren Listen müsste man das etwas anders lösen, da das hier nicht besonders schnell ist

dim Zelle as Range
for each Zelle in Columns(1).SpecialCells(xlcelltypeconstants, 1)
Zelle.Cut Destination:=Zelle.Offset(-1, 1)
Next
Gruß Daniel
Anzeige
noch per VBA
22.11.2022 15:41:04
Rudi
die schnelle Variante:

Sub aaa()
Dim arrIN, arrOUT(), i As Long
arrIN = Range(Cells(1, 1), Cells(Rows.Count, 1).End(xlUp))
ReDim arrOUT(1 To UBound(arrIN) / 2, 1 To 2)
For i = 1 To UBound(arrOUT)
arrOUT(i, 1) = arrIN(i * 2 - 1, 1)
arrOUT(i, 2) = arrIN(i * 2, 1)
Next i
Columns(1).ClearContents
Cells(1, 1).Resize(UBound(arrOUT), 2) = arrOUT
End Sub
Gruß
Rudi
Anzeige
AW: Excel vba zahen verschieben
22.11.2022 17:57:33
Daniel
noch ne Variante. Ob die einsetzbar ist, hängt aber davon ab was sonst noch so auf dem Tabellenblatt steht

Sub test()
Columns(1).SpecialCells(xlCellTypeConstants, 1).Insert shift:=xlToRight
Cells(1, 2).Delete shift:=xlUp
End Sub
ansonsten könnte man es auch so mit einer Formel lösen:

Sub test()
With Cells(1, 1).CurrentRegion
With .Columns(2)
.FormulaR1C1 = "=IF(Istext(RC[-1]),R[1]C[-1],"""")"
.Formula = .Value
End With
.SpecialCells(xlCellTypeConstants, 1).ClearContents
End With
End Sub
Gruß Daniel
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige