HERBERS Excel-Forum - das Archiv
Zwischenablage - Code
Karsten

Hallo,
hatte zwar die Frage schon mal gestellt aber leider ohne Erfolg, deshalb versuche ich es einfach noch mal.
Ich suche für folgendes einen Code (wenn es sich überhaupt VBAschen lässt):
If "Zwischenablage nicht leer" Then
Application.run "Makro1"
Else
Application.run "Makro2"
End If
Danke für eure Hilfe.
Gruß
Karsten

AW: Zwischenablage - Code
Josef

Hallo Karsten,
meinst du so?
If Application.CutCopyMode Then
  Application.Run "Makro1"
Else
  Application.Run "Makro2"
End If

Gruß Sepp

AW: Zwischenablage - Code
Lena

Ja. Danke.
Gruß
Karsten
Nur 2 1/2 Stunden für eine Geschlechtsumwandlung?
Josef

Hallo Lena, früher Karsten!
Ist die Operation gelungen?
Gruß Sepp

AW: Nur 2 1/2 Stunden für eine Geschlechtsumwandlung?
Karsten

Nee, da hab ich wieder kurz den Laptop meiner Frau gehabt und vergessen die Karsten-Maske anzuklicken. Jetzt müsste der Schluß wieder chic sein.
Gruß
Karsten
AW: Nur 2 1/2 Stunden für eine Geschlechtsumwandlu
Karsten

Hallo Sepp,
dieser Code funktioniert nur in Bezug auf das Kopieren einer markierten Zelle.
Wenn ich nur ein bestimmtes Zeichen des Zellinhaltes kopiere, funktioniert Application.CutCopyMode nicht.
Wird diese Operation von Excel anders verarbeitet? Gibt es dafür einen anderen Befehl?
Damit du weißt, was das ganze soll. Ich möchte damit den Exceleigenem Alzheimereffekt umgehen. Z.B. so:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim rngOld As Range

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Application.CutCopyMode Then
Else
Target.WrapText = True
If Not rngOld Is Nothing Then rngOld.WrapText = False
Set rngOld = Target
End If
End Sub
Gruß
Karsten
AW: Nur 2 1/2 Stunden für eine Geschlechtsumwandlu
Josef

Hallo Karsten,
dazu müsste man das Clipboard (Windows-Zwischenablage) abfragen und entsprechend
einbinden. Die Windows-Zwischenablage ist aber auch gefüllt, wenn du in einer anderen
Anwendung etwas kopierst.
Gruß Sepp

AW: Nur 2 1/2 Stunden für eine Geschlechtsumwandlu
Karsten

Hallo Sepp,
Wenn ich es richtig verstehe, geht diese Art des Kopierens über das Clipboard, nicht über Excel.
Wie läßt es sich dementsprechend einbinden, muss ich jetzt fragen?
Gruß
Karsten
AW: Nur 2 1/2 Stunden für eine Geschlechtsumwandlu
Josef

Hallo Karsten,
' **********************************************************************
' Modul: Modul8 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Public Function GetTextFromClipboard() As String
  'Benötigt den Verweis auf "Microsoft Forms 2.x Object Library" (unter Extras > Verweise)
  Dim objCBData As DataObject
  
  Set objCBData = New DataObject
  
  On Error GoTo ErrNoText
  objCBData.GetFromClipboard
  GetTextFromClipboard = objCBData.GetText
  
  ErrNoText:
  
  Set objCBData = Nothing
End Function


Sub test10()
  If GetTextFromClipboard <> "" Then
    Application.Run "Makro1"
  Else
    Application.Run "Makro2"
  End If
End Sub

Gruß Sepp

AW: Nur 2 1/2 Stunden für eine Geschlechtsumwandlu
Karsten

Hallo Sepp.
Danke.
Gruß
Karsten