Microsoft Excel

Herbers Excel/VBA-Archiv

Makro für Arbeitsmappe

Betrifft: Makro für Arbeitsmappe von: Jana
Geschrieben am: 25.05.2008 14:01:50

Hallo liebes Forum!!

Ich habe folgendes Makro geschrieben (dieses tauscht zwei bestimmte Datensätze (den 2. und den 3. mit je allen drei Zeilen) innerhalb eines Outbounds)

Public Sub Umbauen()
    
    Dim arr1(), arrtmp(), arr2(), arr2tmp(), iCount

    arr1 = Range(Cells(2, 1), Cells(Rows.Count, 2).End(xlUp))
    arr1length = UBound(arr1()) + 1
    arr2 = Range(Cells(2, 4), Cells(arr1length, 5))
    
    iCount = 0
    

    Do While iCount < arr1length - 1

        For i = 1 To 3
            
            Select Case i
            
                Case 1
                                            arr2(iCount + i, 1) = arr1(iCount + i, 1)
                                            arr2(iCount + i, 2) = arr1(iCount + i, 2)
                                            

                Case 2
                                            arr2(iCount + i + 1, 1) = arr1(iCount + i, 1)
                                            arr2(iCount + i + 1, 2) = arr1(iCount + i, 2)
                      
                                     
                Case 3
                                            arr2(iCount + i - 1, 1) = arr1(iCount + i, 1)
                                            arr2(iCount + i - 1, 2) = arr1(iCount + i, 2)
                                            
               
            End Select

        Next i
        
        
        iCount = iCount + 4
    Loop

    Range(Cells(2, 4), Cells(arr1length, 5)) = arr2

End Sub



Problem: Dieses Makro läuft wunderbar im eigenen Tabellenblatt. Ich will dieses jedoch zentral in der Arbeitsmappe haben. Durch Ersetzen von "Range(Cells(2, 4), Cells(arr1length, 5)) = arr2" in
"Tabelle4.Range(Cells(2, 4), Cells(arr1length, 5)) = arr2" wollte ich das Array in ein neues Tabellenblatt übertragen. Dabei kommt jedoch der Laufzeitfehler 1004- Anwendungs-und objektdefinierter Fehler.

Leider werde ich aus der Excel-Hilfe nicht wirklich schlau...

Hoffe, ihr könnt mir helfen!

Vielen lieben Dank im Voraus!!

Gruß Jana

  

Betrifft: AW: Makro für Arbeitsmappe von: Gerd L
Geschrieben am: 25.05.2008 14:41:34

Hallo Jana,

mit dem Codenamen der Tabelle:
Tabelle4.Range(Tabelle4.Cells(2, 4), Tabelle4.Cells(arr1length, 5)) = arr2

Mit dem Blattnamen(lt. Register) :
Worksheets("Tabelle4").Range(Worksheets("Tabelle4").Cells(2, 4), Worksheets("Tabelle4").Cells(arr1length, 5)) = arr2

Was ist ein Outbound ?

Gruß Gerd


  

Betrifft: AW: Makro für Arbeitsmappe von: Jana
Geschrieben am: 25.05.2008 14:48:33

Hallo Gerd,

hatte es zuvor schon mit
Worksheets("Tabelle4").Range(Cells(2, 4), Cells(arr1length, 5)) = arr2
probiert, woraus aber Fehler 400 resultierte - hatte nicht dran gedacht, dass er den Verweis vor cells auch noch benötugt.

Aber mit
Worksheets("Tabelle4").Range(Worksheets("Tabelle4").Cells(2, 4), Worksheets("Tabelle4").Cells(arr1length, 5)) = arr2
funktioniert es wunderbar - Danke für die Hilfe

MFG Jana


P.S. outbound:= aus dem SAP in Excel überführte Datensätze


  

Betrifft: AW: Makro für Arbeitsmappe von: Henner
Geschrieben am: 25.05.2008 14:50:01

Das habe ich mich grad auch gefragt Gerd, lt Google/Wikipedia sind das die Anrufer die uns Samstag morgens um halb 8 ausm Bett klingeln ob wir nicht noch eine Versicherung etc bräuchten, also Callcenter Sprache (Outbound=Der Telefonist ruft irgendwelche Leute an; Inbound=Irgendwelche Leute rufen den Telefonisten an).

Gruß Henner


  

Betrifft: AW: Makro für Arbeitsmappe von: Gerd L
Geschrieben am: 25.05.2008 15:06:57

Hallo Jana,

der Codename einer Tabelle steht im VBA-Editor im Projektfenster neben dem Blatt(-register)-Namen.
Diesen würde ich dann verwenden, wenn die Blätter ggf. mal umbenannt werden soll(t)en.
Und danke für die Erläuterung.

Hallo Henner,

ja so ist es mit der menschlichen Kommunikation, seit dem Turmbau von Babylon.
Das Gleiche ist nicht das Selbe. Und damit es nicht langweilig wird, betreiben Softwarehäuser
noch ihre eigene Wortschöpfung. :-)

Grüße Gerd


 

Beiträge aus den Excel-Beispielen zum Thema "Makro für Arbeitsmappe"