Jsem rád, že tady existuje tahle diskuse. Zrovna se snažím přijít na to jak rozjet tento kód:
Sub isTextSelected_()
' Is text selected?
InSelection = False
If Selection.Type = wdSelectionIP Then InSelection = True
' Clear Clipboard
If InSelection = False Then
Dim MyData As DataObject
Set MyData = New DataObject
MyData.SetText ""
MyData.PutInClipboard
Else
Selection.Copy
Documents.Add.Content.Paste
End If
End Sub
Který jsem odvodil z jisté webové stránky. Kde se píše:
The DataObject object is a part of the Forms library in VBA. In order to make this code work, you must do one of two things.
Have at least one UserForm in your project, or
In the VBA editor, go to Tools, References, and set a reference to the "Microsoft Forms 2.0 Object Library"
Myslím že první část kde se ptám jestli je text vybrán funguje.
Teď ale potřebuju vyřešit jak DataObject. Mám čistý dokument do kterého vložím tabulku z netu. Tu pak procházím a kopíruju z ní text. Občas ale nastane situace, že text není vybraný a nelze do něj nic zkopírovat. Já tedy potřebuju vymazat schránku, pokud nic není vybráno; a nastavit schránku na to co je vybráno pokud je výběr uskutečněn.