Abfrage zum Löschen der Zwischenablage verhindern

  • Sonstige

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von nix.

    Abfrage zum Löschen der Zwischenablage verhindern

    Hallo,

    ich kopiere per VBA in Excel 2003 Daten aus einer Excel-Datei in eine andere Datei (Analyse.xls). Danach schließe ich die erste Datei, aber nun kommt die Abfrage "Es befindet sich eine große Mege an Informationen...bla bla bla...Woolen Sie behalten? Ja/Nein/Abbrechen" (stark gekürzt). Wie kann ich diese Abfrage unterdrücken? Ich will die Daten nicht in der Zwischenablage behalten.

    Hier der dazu gehörende Quelltext:

    Visual Basic-Quellcode

    1. Sub ppd_load()
    2. Dim CompleteFileName As String
    3. Dim FileName As String
    4. FileName = ""
    5. CompleteFileName = Application.GetOpenFilename("Excel-Dateien (*.xls), *.xls")
    6. FileName = CompleteFileName
    7. While (InStr(1, FileName, "\", vbTextCompare) <> 0)
    8. Path = Path & Left(FileName, InStr(1, FileName, "\", vbTextCompare))
    9. FileName = Mid(FileName, InStr(1, FileName, "\", vbTextCompare) + 1)
    10. Wend
    11. Application.ScreenUpdating = False
    12. If CompleteFileName <> "Falsch" Then
    13. Workbooks.Open CompleteFileName
    14. ActiveWorkbook.Activate
    15. Cells.Select
    16. Selection.Copy
    17. Windows("Analyse.xls").Activate
    18. ActiveWorkbook.Sheets.Add
    19. ActiveSheet.Select
    20. ActiveSheet.Name = "XYZ"
    21. Cells.Select
    22. Selection.Insert Shift:=xlDown
    23. Windows(FileName).Activate
    24. ActiveWorkbook.Close SaveChanges:=False
    25. Windows("Analyse.xls").Activate
    26. ActiveWorkbook.Worksheets("XYZ").Activate
    27. End If
    28. Application.ScreenUpdating = True
    29. End Sub


    Ich muss übrigens den Tabelleninhalt kopieren, da in manchen Zellen mehr als 255 Zeichen enthalten sind, die bei einer Kopie des Worksheets verlorengehen würden. Deshalb dieses Copy'n'Paste-Konstrukt.

    Danke schonmal,

    mfG, nix

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „nix“ ()

    Hallo nix,

    man kann sich anders helfen:

    Visual Basic-Quellcode

    1. Sub test()
    2. 'Es muss ein Verweis auf Microsoft Forms 2.0 Object Library gesetzt sein
    3. 'direkt oder indirekt!!
    4. Dim o As DataObject
    5. Set o = New DataObject
    6. o.SetText ""
    7. o.PutInClipboard
    8. Set o = Nothing
    9. End Sub


    Evtl. kann es auch helfen die Fehlermeldungen in Excel per VBA zu deaktivieren (kannst du mal probieren, habe keine Zeit mehr)

    Gruß Markus
    Original von alchimist
    Evtl. kann es auch helfen die Fehlermeldungen in Excel per VBA zu deaktivieren (kannst du mal probieren, habe keine Zeit mehr)


    Das wars, danke. Mit "Application.Displayalerts = False" läuft alles ohne "Unterbrechungen".

    mfG, nix
    Mist, war doch nix. Da ich eine ganze Menge Tabellen kopieren muss, ist irgendwann Ende und Excel hängt sich auf, wenn ich die Meldungen unterdrücke. Aber dazu habe ich jetzt ein anderes Mittel gefunden, welches explizit nur für die Zwischenablage-Meldung gilt:

    Application.CutCopyMode = False

    Zumindest tauchen bisher keine weiteren Probleme mehr auf.

    mfG. nix