tutorials.de Buch-Aktion 05/2012
Like Tree1Danke
  • 1 Beitrag von Thomas Ramel
ERLEDIGT
JA
ANTWORTEN
2
ZUGRIFFE
2073
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Timotheus1992 Timotheus1992 ist offline Mitglied Bronze
    Registriert seit
    Mar 2011
    Beiträge
    34
    Hallo liebe Community,

    ich habe mal wieder ein Problem. Ich bekomme regelmäßig Tabellen zugeschickt, die aber zur Weiterverarbeitung in Pivot-Tabellen zusammengeführt werden müssen. Die Vorbereitung soll nun ein Makro erledigen.

    Ich habe auch schon vieles selbst programmiert, doch tritt ein Problem auf.

    Habe ich diese Tabell erhalten, sollen als erstes per Makro die zusammengefügten Zellen aufgelöst werden. Das geschieht wiefolgt:

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    
    Dim rng1 As Range
    Dim sh As Worksheet
    On Error Resume Next 'falls in einem Blatt kein Eintrag ist
    For Each sh In Worksheets
        Set rng1 = sh.Cells.SpecialCells(xlCellTypeConstants, 23)
        For Each zelle In rng1
            If zelle.MergeCells Then
                With zelle.MergeArea
                .UnMerge
                .HorizontalAlignment = xlCenterAcrossSelection
                .VerticalAlignment = xlCenter
                .Orientation = 0
                End With
            End If
        Next
    Next

    Das funktioniert soweit auch. Ich kann jede einzelne Zelle separat anklicken und so weiter.

    Sind die Zellen nun zusammengefügt, steht der Wert, der eigentlich in der zusammengefügten Zelle stand, ganz oben in der ersten Zelle. Dieser Wert soll jetzt allerdings in jeder Zelle der Spalte stehen, bis ein neuer Wert in der jeweiligen Spalte auftritt.

    Dafür habe ich folgenden Code gebaut:

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    
    letzteZ = Tabelle4.Cells(Rows.Count, 8).End(xlUp).Row
     
    For a = 1 To letzteZ 'geht die erste spalte durch
     
    'wenn ein wert in der aktuellen zelle ist, dh wenn der value ungleich 0
        If (Tabelle4.Cells(a, 2)) <> 0 Then
        
            wert = Tabelle4.Cells(a, 2).Value
               
        b = a + 1
        Do While (Tabelle4.Cells(b, 2) = "") And b < letzteZ
     
           Tabelle4.Cells(b, 2) = wert
     
        b = b + 1
        Loop
        
        Else
        End If
    Next a

    Das klappt allerdings nicht vollständig.

    Kann mir bitte jemand helfen? :S Wenn genauere Infos benötigt werden, bitte einfach fragen!
     

  2. #2
    Thomas Ramel Thomas Ramel ist offline Mitglied Gold
    Registriert seit
    Oct 2009
    Beiträge
    104
    Grüezi Timotheus

    Versuche das doch mal mit den folgenden Zeilen:


    Code :
    1
    2
    3
    4
    5
    6
    7
    
    Sub Fill_EmptyCells()
       ' Hier ev. den Bereich anpassen
        With Intersect(Columns("A:A"), ActiveSheet.UsedRange)
            .SpecialCells(xlCellTypeBlanks).FormulaR1C1 = "=R[-1]C"
            .Value = .Value
        End With
    End Sub
    Timotheus1992 bedankt sich. 
    Mit freundlichen Grüssen

    Thomas Ramel
    - MVP für MS-Excel -

  3. #3
    Timotheus1992 Timotheus1992 ist offline Mitglied Bronze
    Registriert seit
    Mar 2011
    Beiträge
    34
    Klasse! Hat nach kurzem Anpassen perfekt gepasst danke an Dich!
     

Ähnliche Themen

  1. HSQL - Tabellen, Attribute(und deren Datentypen), Benutzer, Constraint
    Von javas im Forum Relationale Datenbanksysteme
    Antworten: 1
    Letzter Beitrag: 08.03.10, 08:16
  2. [MySQL] Wie kopiere ich unkompliziert ganze Tabellen?
    Von BeaTBoxX im Forum Relationale Datenbanksysteme
    Antworten: 3
    Letzter Beitrag: 17.10.07, 10:16
  3. Pivot Tabellen in Java?
    Von freek0815 im Forum Java
    Antworten: 1
    Letzter Beitrag: 12.08.07, 09:23
  4. Pivot Tabellen wie in Excel
    Von fablei im Forum PHP
    Antworten: 0
    Letzter Beitrag: 24.09.06, 07:40
  5. Pivot-Tabellen
    Von Kosh im Forum Office-Anwendungen
    Antworten: 5
    Letzter Beitrag: 04.10.02, 10:50

Stichworte