Ich habe Zellen mit doppelten Werten, die ich schnell zusammenführen möchte. Die Tabelle sieht wie folgt aus:schnellste Möglichkeit, doppelte Zellen in ohne Excel zu verschmelzen
Sub MergeCells()
Application.DisplayAlerts = False
Dim n As Name
Dim fc As FormatCondition
Dim Rng As Range, R As Range
Dim lRow As Long
Dim I&, J&
Dim arr As Variant
ReDim arr(1 To 1) As Variant
With ThisWorkbook.Sheets("tst")
Set Rng = .Range("A2:D11")
lRow = Rng.End(xlDown).Row
For J = 1 To 4
For I = lRow To 2 Step -1 'last row to 2nd row
If Trim(UCase(.Cells(I, J))) = Trim(UCase(.Cells(I - 1, J))) Then
Set R = .Range(.Cells(I, J), .Cells(I - 1, J))
arr(UBound(arr)) = R.Address
ReDim Preserve arr(1 To UBound(arr) + 1)
End If
Next I
Next J
ReDim Preserve arr(1 To UBound(arr) - 1)
Set R = .Range(Join(arr, ","))
'MsgBox R.Areas.Count
'R.Select
'R.MergeCells = True
With R
.Merge
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
End With
Stop
End With
Application.DisplayAlerts = True
End Sub
Die doppelten Zellen Bereiche unzusammenhängend oder nicht benachbarte Zellen sein könnte. Ich möchte einen Weg, um solche doppelten Bereiche schnell zu identifizieren und sie ohne Verwendung einer For-Schleife zusammenzuführen. [Weiß nicht, aber denke, es könnte einen schnellsten innovativen Weg ohne Schleifen geben, der wahrscheinlich eine Kombination von Excel-Array-Formeln und VBA-Code verwendet, um doppelte Zellbereiche auszuwählen und zusammenzuführen.]
BTW der obige Code funktioniert gut bis es schießt den folgenden Fehler bei Zeile .Merge.
EDIT Dies ist eine Momentaufnahme der Fenster-Uhr zeigt die arr Inhalte sowie R.Address.
OUTPUT: Sie keine Auswahl nicht benötigen, ist dies nur zu Demonstrationszwecken:
Ausgabe sollte wie folgt aussehen:
BEARBEITEN ... Angenommen, die doppelten Werte wären in allen Zeilen gleich? Also nur doppelte Spaltenwerte, die zusammengeführt werden sollen. Es muss eine schnelle, innovative Art geben, diese Zusammenführung zu tun.
Bitte zeigen Sie Ihr gewünschtes Ergebnis. Was meinst du mit 'merge'? Merge zu mir bedeutet A2: D2 wird zu einer Zelle. –
Was ist 'arr' wenn es einen Fehler gibt? (Btw Zellen zusammenführen ist eine schlechte Nachricht.) – SJR
Dies wird viele Schleifen erfordern. Es wird nicht anders möglich sein. –