VBA Kopiraj u međuspremnik

Ovaj članak će pokazati kako koristiti VBA za kopiranje stavki u međuspremnik.

Možda ćemo htjeti kopirati podatke u Excel VBA i pohraniti ih za upotrebu u drugoj aplikaciji ili u neko drugo vrijeme kada se makronaredba programa Excel prestane izvoditi. Kad se makronaredba prestane izvoditi, informacije koje su pohranjene u varijabli ili varijablama prestaju postojati i više se ne mogu dohvatiti. Način rješavanja ovog problema bio bi kopiranje ovih podataka u međuspremnik.

Kopiranje u međuspremnik pomoću biblioteke HTML objekata

Najjednostavniji način korištenja međuspremnika u programu Excel VBA je pozivanje biblioteke HTML objekata.

1234567 Pod StoreData ()Zatamni varText kao varijantuPriguši objCP kao objektvarText = "Neki kopirani tekst"Postavi objCP = CreateObject ("HtmlFile")objCP.ParentWindow.ClipboardData.SetData "tekst", varTextKraj podm

Budući da koristimo kasno vezivanje deklariranjem varijable objCP kao Objekt, ne moramo dodavati referencu na Excel da bi ovaj postupak funkcionirao.

Kad bismo sada prešli na Excel radni list i kliknuli Zalijepi, tekst "Neki kopirani podaci" umetnuo bi se u odabranu ćeliju.

Ako bismo ovaj gornji postupak promijenili u funkciju, mogli bismo proslijediti tekst koji ćemo kopirati kao varijablu.

12345 Funkcija StoreData (varText kao varijanta) kao StringPriguši objCP kao objektPostavi objCP = CreateObject ("HtmlFile")objCP.ParentWindow.ClipboardData.SetData "tekst", varTextZavršna funkcija

Ovu bismo funkciju tada mogli pozvati više puta u svom VBA kodu kao i kada trebamo kopirati tekst u međuspremnik. Tekst stoga ne bi bio teško kodiran u VBA kod.

123 Sub CopyData ()StoreData "Neki kopirani tekst"Kraj podm

Također možemo koristiti HTML objekt za vraćanje teksta iz međuspremnika - tj. Lijepljenje. Za to koristimo GetData, a ne SetData metodu.

12345 Funkcija ReturnData ()Priguši objCP kao objektPostavi objCP = CreateObject ("HtmlFile")ReturnData = objCP.parentWindow.clipboardData.GetData ("tekst")Završna funkcija

Zatim možemo pozvati ovu funkciju da vratimo podatke pohranjene u međuspremniku.

123 Sub PasteData ()MsgBox Povratni podaciKraj podm

Zgodan trik bio bi kombiniranje dvije funkcije zajedno kako bismo mogli koristiti istu funkciju za kopiranje i lijepljenje podataka, ovisno o tome šaljemo li podatke u međuspremnik ili ne, ili želimo li dohvatiti podatke iz međuspremnika.

1234567891011 Funkcija StoreOrReturnData (izborni strText kao niz) Kao nizZatamni varText kao varijantuPriguši objCP kao objektPostavi objCP = CreateObject ("HtmlFile")varText = strTextAko strText "" ZatimobjCP.ParentWindow.ClipboardData.SetData "tekst", varTextDrugoStoreOrReturnData = objCP.ParentWindow.ClipboardData.GetData ("tekst")Završi akoZavršna funkcija

U gornjem kodu varijablu strText možemo učiniti neobaveznom - to znači da ćemo, ako želimo kopirati podatke, uključiti tekst koji se kopira, ali ako želimo zalijepiti podatke, isključit ćemo ga.

Zatim ćemo varijablu niza (strText) dodijeliti varijabli Variant kako bi se mogla pohraniti u SetData metodu HTML datotečnog objekta.

Za kopiranje podataka možemo upotrijebiti ovaj postupak. Imajte na umu da uključujemo tekst za kopiranje.

123 Sub CopyData ()StoreOrReturnData "SomeCopiedText"Kraj podm

Za lijepljenje podataka možemo koristiti ovaj postupak. Okvir s porukom prikazat će vrijednost pohranjenu u međuspremniku.

123 Sub PasteData ()MsgBox StoreOrReturnDataKraj podm

Vi ćete pomoći u razvoju web stranice, dijeljenje stranicu sa svojim prijateljima

wave wave wave wave wave