Zellenverbinden (Excel): Unterschied zwischen den Versionen

Aus Thomas Wiki
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „Makros zum Verbinden von Zellen in einer Spalte, die den gleichen Wert haben. <table style="border: 1px solid blue;"> <tr> <th>Name</th><th>Vormame</th> </tr>…“)
 
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
Makros zum Verbinden von Zellen in einer Spalte, die den gleichen Wert haben.
Makros zum Verbinden von Zellen in einer Spalte, die den gleichen Wert haben.


<table style="border: 1px solid blue;">
<table Name="beispiel" style="border: 1px solid blue;">
<tr>
<tr style="background-color: grey;">
<th>Name</th><th>Vormame</th>
<th>Name</th><th>Vormame</th>
</tr>
</tr>
<tr>
<tr style="background-color: white;">
<td rowspan="3">Adler</td><td>Inge</td>
<td rowspan="3">Adler</td><td>Inge</td>
</tr>
</tr>
Zeile 14: Zeile 14:
<td>Karin</td>
<td>Karin</td>
</tr>
</tr>
<tr>
<tr style="background-color: light-grey;">
<td>Dinkel</td><td>Hugo</td>
<td>Dinkel</td><td>Hugo</td>
</tr>
</tr>
<tr>
<tr style="background-color: white;">
<td rowspan="2">Meier</td><td>Lars</td>
<td rowspan="2">Meier</td><td>Lars</td>
</tr>
</tr>
Zeile 23: Zeile 23:
<td>Uwe</td>
<td>Uwe</td>
</tr>
</tr>
<tr>
<tr style="background-color: light-grey;">
<td rowspan="3">Meyer</td><td>Sonja</td>
<td rowspan="3">Meyer</td><td>Sonja</td>
</tr>
</tr>
<tr>
<tr style="border: 1px dotted blue;">
<td>Thorsten</td>
<td>Thorsten</td>
</tr>
</tr>

Version vom 13. März 2017, 14:07 Uhr

Makros zum Verbinden von Zellen in einer Spalte, die den gleichen Wert haben.

NameVormame
AdlerInge
Jens
Karin
DinkelHugo
MeierLars
Uwe
MeyerSonja
Thorsten
Uwe
Function LastUsedRow_1(MySheet As Worksheet) As Long

'UsedRange property to find the last used row number in a worksheet

Dim lastRow As Long


lastRow = MySheet.UsedRange.Row - 1 + ActiveSheet.UsedRange.Rows.Count

LastUsedRow_1 = lastRow


End Function

Function LastUsedRow_2(MySheet As Worksheet) As Long


'UsedRange property to find the last used row number in a worksheet

Dim lastRow As Long


lastRow = MySheet.UsedRange.Rows(ActiveSheet.UsedRange.Rows.Count).Row

LastUsedRow_2 = lastRow


End Function


Function Str_NB(Z As Long)

  S = Str(Z)
  Str_NB = Right(S, Len(S) - 1)

End Function

Sub Zellenvereinigen(Spalte As String, Anfang As Long, Ende As Long)
 
  Application.DisplayAlerts = False
  With Range(Spalte + Str_NB(Anfang), Spalte + Str_NB(Ende))
        .Merge
        .HorizontalAlignment = xlLeft
        .VerticalAlignment = xlTop
  End With
  Application.DisplayAlerts = True
  
End Sub

Sub Verbinden_nach_Wert()

'
' Zellen farblich abwechselnd nach Werten markieren
' Makro am 03.01.2012 von Thomas Arend aufgezeichnet
'
  Dim WertSpalte, ZielSpalte As String
  Dim StartZeile As Long
  Dim EndZeile As Long
  
  WertSpalte = "A"
  ZielSpalte = "B"

  StartWert = Range(WertSpalte + "2").Value
  StartZeile = 2
  EndZeile = 2
    
  For Each C In Range(WertSpalte + "3", WertSpalte + Str_NB(LastUsedRow_1(ActiveSheet)))
       
    If C.Value = StartWert Then
     ' C.Value = Null
      EndZeile = EndZeile + 1
    Else
      Call Zellenvereinigen(ZielSpalte, StartZeile, EndZeile)
      StartWert = C.Value
      EndZeile = EndZeile + 1
      StartZeile = EndZeile
    End If
     
  Next

End Sub