Thema Datum  Von Nutzer Rating
Antwort
29.01.2020 19:29:15 Tobi
NotSolved
29.01.2020 21:51:40 Flotter Feger
NotSolved
29.01.2020 22:14:55 Flotter Feger
NotSolved
Blau Tabellen vereinen anhand von Spaltennamen
01.02.2020 18:50:01 Tobi
NotSolved
01.02.2020 21:26:21 Gast24944
*****
NotSolved
02.02.2020 16:56:05 Tobi
NotSolved
02.02.2020 22:36:10 Gast24944
NotSolved

Ansicht des Beitrags:
Von:
Tobi
Datum:
01.02.2020 18:50:01
Views:
551
Rating: Antwort:
  Ja
Thema:
Tabellen vereinen anhand von Spaltennamen

Danke Sabina, ich habe mich von deinem Code inspirieren gelassen.

 

Mein aktueller Stand ist folgender. Leider bekomme ich bei dem Versuch den zu kopierenden Range mit Index anzusprechen die Fehlermeldung:

"Falsche Anzahl an Argumenten oder ungültige Zuweisung zu einer Eigenschaft".

Ich hab schon viel rumexperimentiert und gegoogelt, aber ich komme nicht drauf, wie ich diese Stelle umsetzen könnte.

 

Sub Tabellen_zusammen_fuehren()
   Dim oTargetSheet As Object
   Dim s As Long
   Dim z As Long
   Dim j As Long
   Dim wks As Worksheet
   Dim Data As Variant
   Dim lngI As Long
   Dim aletzte As Long
   Dim zletzte As Long


   
     Application.ScreenUpdating = False 
    
     Set oTargetSheet = ActiveWorkbook.Sheets("Tabelle1")
         
           
         ' Array mit Spaltennamen befüllen
         letztespalte = oTargetSheet.Cells(1, 256).End(xlToLeft).Column
         oTargetSheet.Activate
         Data = Range(Cells(1, 1), Cells(1, letztespalte))
        
        
         For Each wks In ActiveWorkbook.Worksheets
               
           If Not wks.Name = oTargetSheet.Name Then
           aletzte = wks.Cells(Rows.Count, 1).End(xlUp).Row + 1
 
          With oTargetSheet
          
          zletzte = .Cells(Rows.Count, 1).End(xlUp).Row + 1 ': If zletzte = 2 Then zletzte = 1
          For lngI = LBound(Data) To UBound(Data)
            Spalte = Data(1, lngI)
            wks.Range(wks.Index(2, Spalte), wks.Index(aletzte, Spalte)).Copy Destination:=.Index(zletzte, Spalte)
          Next lngI
         ' If zletzte > 1 Then .Rows(zletzte).Delete shift:=xlShiftUp
          End With
         End If
        Next
        
       
     Application.ScreenUpdating = True
    
     'Variablen aufräumen
     Set oTargetSheet = Nothing
     Set oSourceBook = Nothing
End Sub

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
29.01.2020 19:29:15 Tobi
NotSolved
29.01.2020 21:51:40 Flotter Feger
NotSolved
29.01.2020 22:14:55 Flotter Feger
NotSolved
Blau Tabellen vereinen anhand von Spaltennamen
01.02.2020 18:50:01 Tobi
NotSolved
01.02.2020 21:26:21 Gast24944
*****
NotSolved
02.02.2020 16:56:05 Tobi
NotSolved
02.02.2020 22:36:10 Gast24944
NotSolved