Laufzeitfehler '1004': Anwendungs- oder objektdefinierter Fehler

  • Excel

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von Mono.

    Laufzeitfehler '1004': Anwendungs- oder objektdefinierter Fehler

    Liebe Community...

    Ich möchte per Autofill Methode mit der Typ: xlFillCopy
    Zeilen runterkopieren.

    Das Proble ist:

    Ich bekomme einen Laufzeitfehler!!

    und ich weiß nicht woran es liegen könnte....

    Fehler:

    Laufzeitfehler '1004':
    Anwendungs- oder objektdefinierter Fehler

    Verstehe noch nicht warum eigentlich! Denn es sollte eigentlich funktionieren....

    Hier mein Code:

    Visual Basic-Quellcode

    1. Option Explicit
    2. Sub ErzeugenVonNullBeträgen()
    3. Dim a As Long 'Variable in der RowCount 3 - Delta Spalte E gespeichert werden (Auftragsnummern-Anzahl)
    4. Dim srcRange As Range 'Legt den Bereich des Daten fest an dem "runter-kopiert" werden soll
    5. Dim destRange As Range 'Legt den Bereich fest, bis wohin kopiert werden muss
    6. Tabelle5.Range("A2:AO1048576").ClearContents 'Löscht alle Einträge von A2 bis AO1048576
    7. a = Tabelle4.Cells(Rows.Count, 5).End(xlUp).Row 'Einträge von Spalte E in 3 - Delta werden gezählt
    8. Range("A2").FormulaR1C1 = "='3 - Delta'!RC5" 'Verweis auf die "Delta"-Auftragsnummer in "3 - Delta"
    9. Range(Cells(2, 1), Cells(a, 1)).FillDown 'FillDown bis letzter Eintrag (vor leerer Zelle) erreicht wurde
    10. Range("B2").FormulaR1C1 = "=INDEX('1 - Alle Aufträge zu Equipments'!C8,MATCH(RC1,'1 - Alle Aufträge zu Equipments'!C10,0))" 'Über INDEX und VERGLEICH, werden die Informationen ergänzt
    11. Range("C2").FormulaR1C1 = "='2 - Kosten EXKL. Null-Beträge'!RC3" 'Verweis des Werttyps (eigentlich immer IST-Kosten --> 4 )
    12. Range("B2:C" & Cells(Rows.Count, 1).End(xlUp).Row).FillDown 'FillDown für B2&C2 bis letzte befüllte Zeile von Spalte A (Auftragsnummern)
    13. 'Befüllung der Zellen mit 0 Euro Beträgen etc.:
    14. Range("D2").FormulaR1C1 = "Keine KORE Buchung!"
    15. Range("E2").FormulaR1C1 = "Keine KORE Buchung!"
    16. Range("F2").FormulaR1C1 = "0"
    17. Range("G2").FormulaR1C1 = "EUR"
    18. Range("H2").FormulaR1C1 = "0"
    19. Range("I2").FormulaR1C1 = "EUR"
    20. Range("J2").FormulaR1C1 = "0"
    21. Range("K2").FormulaR1C1 = "EUR"
    22. Range("L2").FormulaR1C1 = "0"
    23. Range("M2").FormulaR1C1 = "EUR"
    24. Range("N2").FormulaR1C1 = "0"
    25. Range("O2").FormulaR1C1 = "EUR"
    26. Range("P2").FormulaR1C1 = "0"
    27. Range("Q2").FormulaR1C1 = "EUR"
    28. Range("R2").FormulaR1C1 = "0"
    29. Range("S2").FormulaR1C1 = "EUR"
    30. Range("T2").FormulaR1C1 = "0"
    31. Range("U2").FormulaR1C1 = "EUR"
    32. Range("V2").FormulaR1C1 = "0"
    33. Range("W2").FormulaR1C1 = "EUR"
    34. Range("X2").FormulaR1C1 = "0"
    35. Range("Y2").FormulaR1C1 = "EUR"
    36. Range("Z2").FormulaR1C1 = "0"
    37. Range("AA2").FormulaR1C1 = "EUR"
    38. Range("AB2").FormulaR1C1 = "0"
    39. Range("AC2").FormulaR1C1 = "EUR"
    40. Range("AD2").FormulaR1C1 = "0"
    41. Range("AE2").FormulaR1C1 = "EUR"
    42. Range("AF2").FormulaR1C1 = "0"
    43. Range("AG2").FormulaR1C1 = "EUR"
    44. Range("AH2").FormulaR1C1 = "0"
    45. Range("AI2").FormulaR1C1 = "EUR"
    46. Range("AJ2").FormulaR1C1 = "0"
    47. Range("AK2").FormulaR1C1 = "EUR"
    48. Range("AL2").FormulaR1C1 = "0"
    49. Range("AM2").FormulaR1C1 = "EUR"
    50. Range("AN2").FormulaR1C1 = "0"
    51. Range("AO2").FormulaR1C1 = "EUR"
    52. Set srcRange = Tabelle5.Range("D2:AO2") 'Befüllter Bereich von D2 bis A02
    53. Set destRange = Tabelle5.Range(Cells(2, 3), Cells(a, 41)) 'Ziel-Bereich bis wohin der Autofill gehen soll!
    54. srcRange.AutoFill destRange, xlFillCopy 'Autofill-Befehl mit Option: KOPIEREN
    55. End Sub


    Kann mir jemand weiterhelfen??

    Bis zum Autofill hauts mal hin!! irgendwas geht da mit dem Autofill noch nicht ganz fürchte ich!!


    Vielen Dank!

    LG Tim
    Bei Autofill muss die Destination Range die Source Range beinhalten.

    Also vll:

    Visual Basic-Quellcode

    1. Set destRange = Tabelle5.Range(Cells(2, 4), Cells(3, 41))


    Welchen Wert hat dein a?
    Das ist meine Signatur und sie wird wunderbar sein!
    also mein a zählt 160 zeilen... somit... 160 :)

    und Destination range beinhaltet die Source Range... weil... source bzw. in dem fall destination ist D2 --> Cells(2,4) und AO160 --> Cells(in dem fall: 160, 41)
    das sollte dann ja passen oder was meinst du genau?


    __________________________


    NACHTRAG:

    Ich bin ein Vollscholli, weil ich Depp kann nicht mehr zählen.... hahaha -->A, B, C, D --> D = 4 und nicht 3!!!

    habs jz also ausgebessert und siehe da... es funktioniert!!!!

    Visual Basic-Quellcode

    1. Set srcRange = Tabelle5.Range("D2:AO2") 'Befüllter Bereich von D2 bis A02
    2. Set destRange = Tabelle5.Range(Cells(2, 4), Cells(a, 41)) 'Ziel-Bereich bis wohin der Autofill gehen soll!
    3. srcRange.AutoFill destRange, xlFillCopy 'Autofill-Befehl mit Option: KOPIEREN



    So....

    Ich glaube... das ist ein Zeichen, dass es für heute genug ist....!! Weil... wenn das zählen nimma geht... sollte man es lieber gut sein lassen... *ggg*

    ABER vielen Dank für deinen Hinweis!! Sonst wär ich, heute zumindest... nicht mehr draufgekommen!!!

    DANKE

    LG Tim


    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „ereza“ ()

    Du hattest aber
    Set destRange = Tabelle5.Range(Cells(2, 3), Cells(a, 41))

    Das heisst von "D2:AO2" nach C2:AO2160.
    Als beinhaltet es zwar die Source Range aber es geht in 2 Richtungen drüber hinaus. Autofill geht nur entweder vertikal oder horoizontal. Also ja, sorry, das Problem ist nicht das es das nicht beinhaltet sondern das es drüber hinaus geht
    Das ist meine Signatur und sie wird wunderbar sein!