odpiranje zvezka z userformo

Pomoč pri izdelavi makrov
Odgovori
luka_k
Prispevkov: 61
Pridružen: So Okt 01, 2005 9:00 pm

odpiranje zvezka z userformo

Odgovor Napisal/-a luka_k »

pozdravljeni
zopet ena težava,upam,da za nekatere to ne bo prehudo..
z userformo v nekem zvezku odpiram datoteke,kot so:
se pravi "C:/mesečno poročilo....."
mesečno poročilo za januar.xls
mesečno poročilo za februar.xls
mesečno poročilo za marec.xls
........itd
no,stvar lepo deluje,le ko grem na naslednji mesec,potem moram
popravljati makro(januar,februar,marec....),ker drugače nisem znam.
zanima me sledeče; sedaj sem na userformo dodal combobox,kjer v spustnem seznamu vsebujejo mesece.
kako bi se odzval,glede na mesec v spustnem seznamu,da bi mi odprlo določen zvezek?
poizkusil sem nekako takole:

"c:/mesečno poročilo za & userform1.combobox1 & .XLS

to seveda niti približno ni prav...

upam,da mi bo z vašo pomočjo to uspelo rešiti.

za odgovor se zahvaljujem.

lp
cedra
Prispevkov: 264
Pridružen: Po Jul 25, 2005 11:11 pm
Kraj: Kamnik

Odgovor Napisal/-a cedra »

Verjetno bo treba napisati nekaj v tem stilu:

Koda: Izberi vse

Private Sub ComboBox1_Change()
    Workbooks.Open Filename:= _
         "C:\Moji dokumenti\" & ComboBox1.Value & ".xls"
End Sub
lp,

cedra
kljuka13
Prispevkov: 257
Pridružen: Po Sep 10, 2007 4:29 pm
Kraj: Maribor

Odgovor Napisal/-a kljuka13 »

Ali pa na daljši način

Koda: Izberi vse

Select Case Combobox1.Value
    Case "Januar"
        Workbook.OpenFile "C:\Januar.xls\"
    Case "Februar"
        Workbook.OpenFile "C:\Februar.xls\"
    Case "Marec"
         Workbook.OpenFile "C:\Marec.xls\"
    ...
End Select
[img]http://shrani.si/f/3t/YL/4W2P37B9/office.gif[/img]
[img]http://shrani.si/f/12/aa/1rt1wj6i/1/userbardionaea.gif[/img]
[img]http://shrani.si/f/3D/nN/3RQySBCl/vista-copy.gif[/img]
luka_k
Prispevkov: 61
Pridružen: So Okt 01, 2005 9:00 pm

Odgovor Napisal/-a luka_k »

pozdravljena

zahvaljujem se vama za primera,vendar mi žal ne delujeta

Koda: Izberi vse

Private Sub ComboBox1_Change() 
    Workbooks.Open Filename:= _ 
         "C:\Moji dokumenti\" & ComboBox1.Value & ".xls" 
End Sub
v tem primeru se mi zdi Cedra,da bi moral vključiti userform1,saj
se ne ve na kateri useformi je combobox1.no to so moja predvidevanja...
prosim,če preizkusite....pa me obvestite,zelo bom hvaležen.

kar pa se tiče primer kljuka13(zanimiva koda),pa se mi ustavi že kar pri :

Koda: Izberi vse

Workbook.OpenFile "C:\Januar.xls\" 
popravil sem:
Workbook.OpenFile "C:\Januar.xls" (brez poševnice),pa zopet ne deluje.
kaj delam narobe?

ps:pot sem ustrezno spremenil.

za odgovore se vama zahvaljujem.


lp
luka_k
Prispevkov: 61
Pridružen: So Okt 01, 2005 9:00 pm

Odgovor Napisal/-a luka_k »

pozdravljeni

kar se tiče primera,ki mi ga je poslal kljuka13 sem malo popravil

Koda: Izberi vse

Select Case ComboBox1.Value
    Case "januar"
       Workbooks.Open Filename:="C:\januar.xls"
    Case "februar"
       Workbooks.Open Filename:="C:\februar.xls"
    Case "marec"
       Workbooks.Open Filename:="C:\marec.xls"
End Select
no, in sedaj makro lepo deluje.hvala,veliko ste mi pomagali.

vesel bi bil če bi mi tudi Cedra odgovoril s svojim primerom.
LP
cedra
Prispevkov: 264
Pridružen: Po Jul 25, 2005 11:11 pm
Kraj: Kamnik

Odgovor Napisal/-a cedra »

Pot do datoteke mora biti popolnoma pravilna in jo morate temu primerno popraviti. Predvideval sem, da imate iskane datoteke v mapi "Moji dokumenti", ne pa direktno na disku C! Če vam popravljena koda od kljuka13 dela, potem mojo kodo popravite v:

Koda: Izberi vse

Private Sub ComboBox1_Change()
    Workbooks.Open Filename:= _
         "C:\" & ComboBox1.Value & ".xls"
End Sub
in koda bi morala delovati. Sam sem jo preizkusil in lepo deluje! :D
lp,

cedra
luka_k
Prispevkov: 61
Pridružen: So Okt 01, 2005 9:00 pm

Odgovor Napisal/-a luka_k »

pozdravljen

hvala,ja res deluje pravilno,torej sem lahko samo jaz zamučkal
s nepravilno potjo.hvala.
nekaj pa me vendar še bega Cedra:

recimo, da imam dve userformi in na vsaki imam po en combobox1,
kako bi se pri tem primeru odločil vaš ukaz;ali za combobox1 na userformi1,
ali za combobox1 na userformi2.upam,da razumete moje vprašanje.
za odgovor se vam zahvaljujem.

lp
cedra
Prispevkov: 264
Pridružen: Po Jul 25, 2005 11:11 pm
Kraj: Kamnik

Odgovor Napisal/-a cedra »

Prva forma:

Koda: Izberi vse

Workbooks.Open Filename:="C:\" & UserForm1.ComboBox1.Value & ".xls"
Druga forma:

Koda: Izberi vse

Workbooks.Open Filename:="C:\" & UserForm2.ComboBox1.Value & ".xls"
lp,

cedra
luka_k
Prispevkov: 61
Pridružen: So Okt 01, 2005 9:00 pm

Odgovor Napisal/-a luka_k »

pozdravljen

aha.to je to....glede na videno,verjamem ,da je koda pravilna ,
v to ne dvomim.ker bom v svojem primeru res uporabil več userform,
mi bo ta rešitev zelo koristila.še enkrat hvala :D

lp
Odgovori