Copy/Paste von Bildern: Laufzeitfehler 1004: Die PasteSpecial-Methode des Range-Objektes konnte nicht ausgeführt werden.

  • Excel

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von deborah05.

    Copy/Paste von Bildern: Laufzeitfehler 1004: Die PasteSpecial-Methode des Range-Objektes konnte nicht ausgeführt werden.

    Hallo zusammen,

    ich bin neu hier und habe mich mithilfe von chatGPT an VBA getraut. Bitte keine Witze machen, ich habe erst vor paar Wochen mit VBA angefangen.

    Nun zum Problem: Ich habe im Blatt «Symbols» verschiedene Bilder/Symbole, die im neu-erstellten Blatt «newVSM», je nach Dateninput im Blatt «Data», eingefügt werden sollen.

    Wenn ich den Code ausführe, geht er die Daten durch und ersetzt diese durch Bilder/Symbole im neu erstellten Blatt. Von 5 Versuchen, klappt der Code ca. 3x. Bei den anderen 2x bleibt er bei einem «newVSMsheet.Rane(XX).PasteSepcial xlPasteAll» Teil hängen. Ganz per Zufall, immer an einer anderen Stelle
    Die Symbole sind richtig «verlinkt», was ja auch die die Versuche bestätigen, welche funktionieren.

    Weiss jemand, warum der Code jedoch ab und zu hängen bleibt? Hier der Code:


    Visual Basic-Quellcode

    1. Sub GenerateNewVSM()
    2. Dim flowDataSheet As Worksheet
    3. Dim newVSMsheet As Worksheet
    4. Dim symbolsSheet As Worksheet
    5. Dim lastRow As Long
    6. […]
    7. ' Create a new "new VSM" sheet
    8. Set newVSMsheet = Sheets.Add(After:=Sheets(Sheets.Count))
    9. newVSMsheet.Name = "new VSM"
    10. Application.CutCopyMode = False
    11. symbolsSheet.Shapes("Group 33").Copy ' add information flow symbol
    12. newVSMsheet.Range("A4").PasteSpecial xlPasteAll ' Paste the shape into cell A4 on newVSMsheet
    13. Application.CutCopyMode = False
    14. symbolsSheet.Shapes("Group 7237").Copy ' add weekly plan symbol
    15. newVSMsheet.Range("A8").PasteSpecial xlPasteAll ' Paste the shape into cell A8 on newVSMsheet
    16. Application.CutCopyMode = False
    17. symbolsSheet.Shapes("Group 7236").Copy ' Add push symbol
    18. newVSMsheet.Range("A13").PasteSpecial xlPasteAll ' Paste the shape into cell A13 on newVSMsheet
    19. Application.CutCopyMode = False
    20. symbolsSheet.Shapes("Group 13").Copy ' Add pull symbol
    21. newVSMsheet.Range("A15").PasteSpecial xlPasteAll ' Paste the shape into cell A15 on newVSMsheet
    22. Application.CutCopyMode = False
    23. symbolsSheet.Shapes("Group 5").Copy ' Add push symbol
    24. newVSMsheet.Range("A18").PasteSpecial xlPasteAll ' Paste the shape into cell A18 on newVSMsheet
    25. Application.CutCopyMode = False
    26. symbolsSheet.Shapes("Group 1").Copy ' Add kanban cards symbol
    27. newVSMsheet.Range("A23").PasteSpecial xlPasteAll ' Paste the shape into cell A23 on newVSMsheet
    28. Application.CutCopyMode = False
    29. symbolsSheet.Shapes("Picture 28").Copy ' Add flt symbol
    30. newVSMsheet.Range("A29").PasteSpecial xlPasteAll ' Paste the shape into cell A29 on newVSMsheet
    31. Application.CutCopyMode = False
    32. symbolsSheet.Shapes("Picture 225").Copy ' Add agv symbol
    33. newVSMsheet.Range("A32").PasteSpecial xlPasteAll ' Paste the shape into cell A32 on newVSMsheet
    34. Application.CutCopyMode = False
    35. symbolsSheet.Shapes("Picture 63").Copy ' Add manual truck symbol
    36. newVSMsheet.Range("A36").PasteSpecial xlPasteAll ' Paste the shape into cell A36 on newVSMsheet
    37. Application.CutCopyMode = False
    38. symbolsSheet.Shapes("Picture 9").Copy ' Add milkrun truck symbol
    39. newVSMsheet.Range("A39").PasteSpecial xlPasteAll ' Paste the shape into cell A39 on newVSMsheet
    40. Application.CutCopyMode = False
    41. symbolsSheet.Shapes("Group 7232").Copy ' Add kaizen symbol
    42. newVSMsheet.Range("A43").PasteSpecial xlPasteAll ' Paste the shape into cell A4 on newVSMsheet
    43. Application.CutCopyMode = False
    44. symbolsSheet.Shapes("Group 37").Copy ' Add supplier symbol
    45. newVSMsheet.Range("C3").PasteSpecial xlPasteAll ' Paste the shape into cell A4 on newVSMsheet
    46. Application.CutCopyMode = False
    47. symbolsSheet.Shapes("Group 7318").Copy ' Add supplier arrow
    48. newVSMsheet.Range("C9").PasteSpecial xlPasteAll ' Paste the shape into cell A4 on newVSMsheet
    49. Application.CutCopyMode = False
    50. [...]


    Ich weiss, der Code sieht ziemlich doof, nicht schön und nicht professionell aus, aber für mich ist er verständlich.

    Danke!

    Deborah
    Wenn der Fehler auftritt, was wird angezeigt, wenn du im Debug-Modus über newVSMsheet.Range("...") (genauer gesagt das Range) mit der Maus hoverst? Wird da irgendwas angezeigt? Ich frage mich nämlich, ob evtl. in manchen Fällen keine Range zurückgegeben wird und entprechend kein PasteSpecial existiert.

    Evtl. mal vor den jeweiligen PasteSpecial-Zeilen sowas hier machen: If newVSMsheet.Range("...") Is Not Nothing Then [...]
    Besucht auch mein anderes Forum:
    Das Amateurfilm-Forum