..|| Blog || Produkti/Storitve || MExcel || MDodatki || 300 nasvetov ||..

Kopiranje med različnimi inštancami Excela

Pomoč pri izdelavi makrov

Kopiranje med različnimi inštancami Excela

OdgovorNapisal/-a PaPaDiZ » Sr dec 27, 2017 2:37 pm

Pazdravljeni

Nikakor mi ne uspe spravit sukpaj kode. Makro se zaganja iz delovnega zvezka a.xls, rad bi pa da iz delovnega zvezaka b.xls kopira stolpec A, v delovni zvezek a.xls. Delovna zvezka tečeta pod različnimi inštancami excela. Prosim za pomoč, hvala
PaPaDiZ
 
Prispevkov: 26
Pridružen: Pe maj 11, 2007 7:01 am



Matjazev.NET
 

Re: Kopiranje med različnimi inštancami Excela

OdgovorNapisal/-a admin » Sr dec 27, 2017 4:00 pm

Kaj pa pomeni "Različne instance Excela"? Če pomeni to, kar naj bi pomenilo; recimo da zvezek A odprete v Excelu 2017, zvezek B pa v Excelu 2003; Potem med njima ne morete avtomatično kopirati podatkov. VBA koda lahko kontrolira samo zvezke ki tečejo znotraj ISTEGA Excela
lp,
Matjaž Prtenjak
Administrator
admin
Site Admin
 
Prispevkov: 3466
Pridružen: Sr jul 20, 2005 10:06 pm

Re: Kopiranje med različnimi inštancami Excela

OdgovorNapisal/-a PaPaDiZ » Sr dec 27, 2017 4:47 pm

Oba delovna zvezka sta odprta v excelu 2010, vendar v različnih procesih.
PaPaDiZ
 
Prispevkov: 26
Pridružen: Pe maj 11, 2007 7:01 am

Re: Kopiranje med različnimi inštancami Excela

OdgovorNapisal/-a admin » Če dec 28, 2017 8:44 am

Pozdravljeni,

To pa je čisto noramalna situacija. Excel za vsak dokument naredi nov proces. Takšen makro lahko preprosto posnamete in dobili boste sledečo kodo (Ta koda zvezek B najprej odpre in potem kopira podatke!):
Koda: Izberi vse
Option Explicit

Sub Makro1()
'
' Makro1 Makro
'

'
    Workbooks.Open Filename:="b.xlsx"
    Columns("A:A").Select
    Selection.Copy
    Windows("a.xlsx").Activate
    ActiveSheet.Paste
End Sub
lp,
Matjaž Prtenjak
Administrator
admin
Site Admin
 
Prispevkov: 3466
Pridružen: Sr jul 20, 2005 10:06 pm

Re: Kopiranje med različnimi inštancami Excela

OdgovorNapisal/-a PaPaDiZ » Če dec 28, 2017 9:02 am

Pozdravljeni

Niste me čisto razumeli. Bom poiskušal drugače razložiti. Zvezek B se odpira preko FTP povezave in ga Excel odpre v novem procesu (če pogledam v Task Manager pod procese tečeta dva EXCEL.EXE procesa in ta drugi je ravno ta B zvezek). V prvem procesu so vsi lokalno odprti zvezki.

Hvala
PaPaDiZ
 
Prispevkov: 26
Pridružen: Pe maj 11, 2007 7:01 am

Re: Kopiranje med različnimi inštancami Excela

OdgovorNapisal/-a admin » Če dec 28, 2017 10:29 am

če je temu tako, potem verjetno tečeta tudi pod različnimi uporabniškimi imeni ib v tem primeru podatko ne boste mogli kar preprosto kopirati z VBA kodo.
lp,
Matjaž Prtenjak
Administrator
admin
Site Admin
 
Prispevkov: 3466
Pridružen: Sr jul 20, 2005 10:06 pm

Re: Kopiranje med različnimi inštancami Excela

OdgovorNapisal/-a PaPaDiZ » Če dec 28, 2017 10:34 am

Odpre se lokalno v novem procesu pod istim uporabniškim imenom
PaPaDiZ
 
Prispevkov: 26
Pridružen: Pe maj 11, 2007 7:01 am

Re: Kopiranje med različnimi inštancami Excela

OdgovorNapisal/-a admin » Če dec 28, 2017 10:53 am

Vzpostavite situacijo, da sta oba zvezka odprata tako kot morata biti. V enem izmed njiju se postavite v VBA urejevalnik in poglejte ali preko VBA Project okna vidite drug delovni zvezek. Če ga vidite, potem lahko uporabite malce prirejeno kodo, ki sem vam jo poslal jaz. Če preko VBA drugega delovnega zvezka ne vidite, potem preko VBA stvari ne boste mogli kopirati, saj drugega zvezka ne morete izbrati. Psevdo koda bi bila takšna:
Koda: Izberi vse
Izberi delovni zvezek
Kopiraj stolpec A
Izberi DRUGI delovni zvezek   <--- če VBA drugega DZ ne vidi potem te kode ne more izvesti!

Kot torej vidite je stvar jasna. Če VBA ne vidi drugega delovnega zvezka, potem tja ne more kopirati podatkov.

OK: Sedaj pa če čisto programersko. Seveda rešitev obstaja, saj lahko tudi vi ročno označite nekaj v prvem zvezku iz z miško to kopirate v drugega. Seveda to deluje, le v VBA to ni preprosto rešiti (potrebno je nižjenovojsko programiranje na nivoju Windows API funkcij) in presega pomoč na tem forumu.
lp,
Matjaž Prtenjak
Administrator
admin
Site Admin
 
Prispevkov: 3466
Pridružen: Sr jul 20, 2005 10:06 pm

Re: Kopiranje med različnimi inštancami Excela

OdgovorNapisal/-a PaPaDiZ » Če dec 28, 2017 11:17 am

Ne, v VBA urejevalniku ne vidim drugega zvezka.
PaPaDiZ
 
Prispevkov: 26
Pridružen: Pe maj 11, 2007 7:01 am


Vrni se na VBA

Kdo je prisoten

Po forumu brska: 0 registriranih uporabnikov in 2 gostov

cron