Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema Image
BildScreenshot zu Image Image-Seite mit Beispielarbeitsmappe aufrufen

Kopieren von zellen aus verschiedenen WS | Herbers Excel-Forum


Betrifft: Kopieren von zellen aus verschiedenen WS von: Helge Kuehn
Geschrieben am: 03.01.2010 09:10:44

Guten morgen,
ich stosse schon wieder an meine Grenzen und komme nicht weiter. Ich habe 3 Tabellenblaetter (Main, Tab1 und Tab2). In Tab1 und Tab2 sind verschiedene Artikel aufgefuehrt (Spalte A = Beschreibung, Spalte = Anzahl). In Main sollen die Tab1 und Tab2 verknueft werden und jeder Arktikel genau einmal aufgefuehrt sein (also keine dublikate) und die Anzahl summiert sein. Nach moeglichkeit soll das sub dynamisch sein, da immer wieder Artikel in Tab1 und Tab2 hinzu gefuegt werden. Hat jmd eine idee ?

  

Betrifft: AW: Kopieren von zellen aus verschiedenen WS von: Klaus-Dieter
Geschrieben am: 03.01.2010 09:25:50

Hallo Helge,

Artikelnummern gibt es in deinen Listen nicht? Eine Auswertung auf der Basis der Beschreibungen ist sicher fehlerträchtig.



Viele Grüße Klaus-Dieter

Klaus-Dieter's Excel und VBA Seite
Online-Excel



  

Betrifft: AW: Kopieren von zellen aus verschiedenen WS von: Helge Kuehn
Geschrieben am: 03.01.2010 09:34:19

Hi, stimmt mit einer Artikelnummer ist es wesentlich besser. Ich werde das in den Listen editieren.


  

Betrifft: Lösung in VBA? von: Klaus-Dieter
Geschrieben am: 03.01.2010 10:49:05

Hallo Helge,

noch eine Frage, du schreibst etwas von einer Sub, also denkst du an eine VBA-Lösung?



Viele Grüße Klaus-Dieter

Klaus-Dieter's Excel und VBA Seite
Online-Excel



  

Betrifft: AW: Kopieren von zellen aus verschiedenen WS von: Tino
Geschrieben am: 03.01.2010 11:31:59

Hallo,
versuche es mal mit diesem Code

Sub Liste_Mit_Summe()
Dim oDic As Object
Dim meAr()
Dim A As Long
Dim i As Integer

Set oDic = CreateObject("Scripting.Dictionary")
'Überschrift 
oDic("Beschreibung") = "Summe"

'Schleife über Tab1 und Tab2 
For i = 1 To 2

    With Sheets("Tab" & CStr(i)).UsedRange
        'Daten aus Spalte 1 und 2 
        meAr() = Range(.Columns(1), .Columns(2)).Value2
    End With
    'ab Zeile 2, 1 = Überschrift in der Tabelle 
    For A = 2 To Ubound(meAr)
     'Ist der Wert eine Zahl 
     If IsNumeric(meAr(A, 2)) Then _
     oDic(meAr(A, 1)) = oDic(meAr(A, 1)) + meAr(A, 2)
    Next A

Next i

With Sheets("Main")
    .Range("A:B").ClearContents
    .Range("A1").Resize(oDic.Count) = Application.Transpose(oDic.keys)
    .Range("B1").Resize(oDic.Count) = Application.Transpose(oDic.Items)
    .Range("A1:B1").Font.Bold = True
    .Columns("A:B").EntireColumn.AutoFit
End With

End Sub
Gruß Tino


  

Betrifft: AW: Kopieren von zellen aus verschiedenen WS von: Helge Kuehn
Geschrieben am: 03.01.2010 12:29:54

Hey danke Tino, passt soweit. Hab da irgendwie den falschen Ansatz gehabt ;)

Wuensche euch noch einen schoenen Sonntag.


  

Betrifft: AW: Kopieren von zellen aus verschiedenen WS von: Helge Kuehn
Geschrieben am: 03.01.2010 12:23:16

Dank dir Tino, so wollte ich das ... da war ich ja mit meiner loesung meilen entfernt ;) Wuensche dir noch einen schoenen Sonntag


Beiträge aus den Excel-Beispielen zum Thema "Kopieren von zellen aus verschiedenen WS"