Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA Makro bitte um Hilfe

Forumthread: VBA Makro bitte um Hilfe

VBA Makro bitte um Hilfe
16.05.2020 08:55:56
Tom
Hallo liebe Profis,
ich habe folgendes Makro vorliegen.

Sub Beleg()
' Beleg Makro
' Tastenkombination: Strg+b
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:= _
"l:\Meine Ablage\xx-001.pdf" _
, TextToDisplay:="Beleg"
With Selection.Font
.Name = "Arial"
.Size = 11
.Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleSingle
.ColorIndex = 5
.TintAndShade = 0
.ThemeFont = xlThemeFontNone
End With
End Sub

Nun möchte ich aber, dass das Makro nicht "l:\Meine Ablage\xx-001.pdf" als URL Adresse einträgt, sondern jeweils den aktuellen Inhalt der Zwischenablage. Also defakto STRG+V !
Wie müsste man das machen? Kann mir da bitte jemand einen Tipp geben :-)
Vielen herzlichen Dank,
Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Makro bitte um Hilfe
16.05.2020 09:34:12
Nepumuk
Hallo Tom,
teste mal:
Option Explicit

Private Declare PtrSafe Function IsClipboardFormatAvailable Lib "user32.dll" ( _
    ByVal wFormat As Long) As Long

Private Const CF_TEXT As Long = 1&

Sub Beleg()
    '
    ' Beleg Makro
    '
    ' Tastenkombination: Strg+b
    '
    Dim objClipBoard As Object
    Dim strText As String
    
    If IsClipboardFormatAvailable(CF_TEXT) = 1 Then
        
        Set objClipBoard = CreateObject("new:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}")
        Call objClipBoard.GetFromClipboard
        strText = objClipBoard.GetText
        Set objClipBoard = Nothing
        
        ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:= _
            strText, TextToDisplay:="Beleg"
        
        With Selection.Font
            .Name = "Arial"
            .Size = 11
            .Strikethrough = False
            .Superscript = False
            .Subscript = False
            .OutlineFont = False
            .Shadow = False
            .Underline = xlUnderlineStyleSingle
            .ColorIndex = 5
            .TintAndShade = 0
            .ThemeFont = xlThemeFontNone
        End With
    Else
        Call MsgBox("Kein Text in der Zwischenablage.", vbCritical, "Fehler")
    End If
End Sub

Gruß
Nepumuk
Anzeige
AW: VBA Makro bitte um Hilfe
16.05.2020 11:53:01
Tom
Hey Nepumuk, vielen Dank - das Makro funktioniert grundsätzlich einwandfrei. Lediglich der Schnellaufruf mit STRG+B geht nicht mehr. Wie bekomme ich das wieder hin ? hast Du da ev. auch noch einen Tipp ? LG Tom
AW: VBA Makro bitte um Hilfe
16.05.2020 12:05:02
Nepumuk
Hallo Tom,
auf der Exceloberfläche mit F8 den Makrodialog aufrufen und die Tastenkombi neu zuweisen.
Gruß
Nepumuk
Anzeige
AW: VBA Makro bitte um Hilfe
16.05.2020 12:06:37
Nepumuk
Oooooooooooooops,
ich meine natürlich Alt+F8
Gruß
Nepumuk
AW: VBA Makro bitte um Hilfe
16.05.2020 12:09:39
Tom
Danke für den Tipp. Geht - allerdings nur in Kombination mit STRG+Umschalt (das ist so vorgegeben) nur STRG geht wohl nicht ? LG Tom
AW: VBA Makro bitte um Hilfe
16.05.2020 13:08:53
Nepumuk
Hallo Tom,
das geht nicht. Allerdings geht es mit Strg+ Kleinbuchstabe. Im Dialog nur auf den gewünschten Buchstaben drücken. Ich habe es gerade getestet, Strg+b so wie ursprünglich funktioniert.
Gruß
Nepumuk
Anzeige
AW: VBA Makro bitte um Hilfe
16.05.2020 13:44:05
Tom
SUPER - Danke für alles Du warst eine geniale Hilfe - schönes Wochenende !!!!
AW: VBA Makro bitte um Hilfe
16.05.2020 09:57:51
Daniel
Hi
Dem STRG+V entspricht der VBA-Befehl ActiveSheet.Paste
Eingefügt wird in die selektierte Zelle.
Vielleicht reicht ein einfaches:
ActiveSheet.Paste
ActiveSheet.Hyperlinks.Add Anchor:=Selection, _
Address=Selection.Text, _
TextToDisplay="Beleg"
Gruß Daniel
Anzeige
AW: VBA Makro bitte um Hilfe
16.05.2020 11:53:47
Tom
Hey Daniel, Dein Vorschlag funktioniert bei mir leider nicht :-( Trotzdem Danke und Gruß Tom
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige