AW: Zeilenmerkmale in Spalten umwandeln
17.08.2008 19:21:00
Peter
Hallo Monty,
so sollte es gehen:
Option Explicit
Public Sub Konzentrieren()
Dim WkSh_Q As Worksheet
Dim WkSh_Z As Worksheet
Dim lZeile_Q As Long
Dim lZeile_Z As Long
Dim sGruppe As String
Application.ScreenUpdating = False
Set WkSh_Q = Worksheets("Tabelle1") ' den Tabellenblattnamen ggf. anpassen !!!
Set WkSh_Z = Worksheets("Tabelle2") ' den Tabellenblattnamen ggf. anpassen !!!
lZeile_Z = 1
For lZeile_Q = 1 To WkSh_Q.Cells(Rows.Count, 1).End(xlUp).Row
If sGruppe = "" Then
GoSub Gruppenbegriff_einstellen
End If
If sGruppe = Trim(WkSh_Q.Cells(lZeile_Q, 1).Value) Then
GoSub Daten_uebernehmen
Else
GoSub Gruppenbegriff_einstellen
GoSub Daten_uebernehmen
End If
Next lZeile_Q
Application.ScreenUpdating = True
Exit Sub
Daten_uebernehmen:
Select Case Trim(WkSh_Q.Cells(lZeile_Q, 3).Value)
Case "Kinos"
WkSh_Z.Cells(lZeile_Z, 2).Value = WkSh_Q.Cells(lZeile_Q, 2).Value
Case "Gaststätten"
WkSh_Z.Cells(lZeile_Z, 3).Value = WkSh_Q.Cells(lZeile_Q, 2).Value
Case "Einkaufscentren"
WkSh_Z.Cells(lZeile_Z, 4).Value = WkSh_Q.Cells(lZeile_Q, 2).Value
Case Else
WkSh_Z.Cells(lZeile_Z, 5).Value = WkSh_Q.Cells(lZeile_Q, 2).Value
End Select
Return
Gruppenbegriff_einstellen:
sGruppe = Trim(WkSh_Q.Cells(lZeile_Q, 1).Value)
lZeile_Z = lZeile_Z + 1
WkSh_Z.Cells(lZeile_Z, 1).Value = sGruppe
Return
End Sub
Gruß Peter