Ich habe ein Excel-Blatt mit einer Reihe von Entitäten, die durch ihre 'Jobnummer' definiert sind. Ich benötige jedoch mehrere Zeilen pro Job, was bedeutet, dass die Spalte Duplikate enthält, z. B. in
Gibt es eine Möglichkeit, jede Gruppe identischer Auftragsnummern zu einer einzigen Zeile zusammenzufassen? ist das bevorzugte Layout.
Hinweis: Jeder Auftrag hat garantiert 3 Zeilen, sodass er immer dem gleichen Muster folgt. Gibt es eine Möglichkeit, dies zu tun?
microsoft-excel
microsoft-excel-2013
Maxim Srour
quelle
quelle
Antworten:
Versuchen Sie diesen Code:
Sub Test() TitleRow = 1 'if title contain more than one row, change the value 1 to the actual number of rows i = 0 Application.DisplayAlerts = False Do Set StartCell = ActiveSheet.Range("A" & (TitleRow + 3 * i + 1)) Set EndCell = ActiveSheet.Range("A" & (TitleRow + 3 * i + 3)) With ActiveSheet.Range(StartCell, EndCell) .Merge .VerticalAlignment = xlCenter .HorizontalAlignment = xlCenter End With i = i + 1 Loop Until Range("A" & (TitleRow + 3 * i) + 1) = "" Application.DisplayAlerts = True End Sub
quelle
Dies kann einfach mit einem Makro oder VBA durchgeführt werden. Bearbeiten Sie den folgenden Code in VBA gemäß Ihren Anforderungen.
Bereich ("A1: A3"). Mit Auswahl auswählen .HorizontalAlignment = xlCenter .VerticalAlignment = xlBottom .WrapText = False .Orientation = 0 .AddIndent = False .IndentLevel = 0 .ShrinkToFit = False .ReadingOrder = xlContext .Merge Selection.Merge With Selection .HorizontalAlignment = xlCenter
quelle
Range("A1:A3")
definiert den Bereich als absolut. Wie würde ich vorgehen, wenn ich das für jede einzelne Zeilengruppe tun müsste?