www.elektronik.si Seznam forumov www.elektronik.si
Forum o elektrotehniki in računalništvu
 
 PomočPomoč  IščiIšči  Seznam članovSeznam članov  SkupineSkupine  StatisticsStatistika  AlbumAlbum  DatotekeFilemanager DokumentacijaDocDB LinksPovezave   Registriraj seRegistriraj se 
  PravilaPravila  LinksBolha  PriponkePriponke  KoledarKoledar  ZapiskiZapiski Tvoj profilTvoj profil Prijava za pregled zasebnih sporočilPrijava za pregled zasebnih sporočil PrijavaPrijava 
Sponsored by SiOL

Excel

 
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> MS Windows razprave
Poglej prejšnjo temo :: Poglej naslednjo temo  
Avtor Sporočilo
rimci
Član
Član



Pridružen-a: Sre 30 Apr 2003 19:01
Prispevkov: 440
Aktiv.: 3.04
Kraj: Prekmurje

PrispevekObjavljeno: Sob Sep 09, 2017 10:07 pm    Naslov sporočila:  Excel Odgovori s citatom

Pozdravljeni

Imam en problem. Z makrojem želim shranit excelov list, ki bi imel ime delovnega zvezka z končnico txt. To probam narediti z funkcijo MID pa mi ne uspe.
Koda:
ActiveSheet.SaveAs Filename:= _
            ThisWorkbook.Path & "\" & Mid(ActiveWorkbook.Name, 0, 4) & ".txt", FileFormat:= _
            xlTextPrinter, CreateBackup:=False


Kaj delam narobe?
Ali pa bi to lahko naredil na kak drug način (z kako drugo funkcijo)

Hvala za pomoč
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
mkezmah
Član
Član



Pridružen-a: Sre 21 Jan 2009 16:30
Prispevkov: 206
Aktiv.: 1.91
Kraj: Maribor

PrispevekObjavljeno: Pon Sep 11, 2017 7:37 am    Naslov sporočila:   Odgovori s citatom

Hm...

Prvič: MID ti ne vrne imena excelovega lista, ampak definirano število znakov iz stringa (v tvojem primeru 4 znake čisto od začetka stringa). Če ime nima vsaj štirih znakov, že imaš problem.

Drugič: Poskusi nehat mešati reference. Najprej imaš ActiveSheet, potem imaš ThisWorkbook, potem imaš ActiveWorkbook (poudarek na Active vs This). Kaj boš uporabil je odvisno od tega, kdaj/na kak način zaganjaš makro.

Tukaj imaš naštetih 10 načinov, kako se lahko sklicuješ na delovni zvezek:
http://www.techrepublic.com/blog/10-things/10-ways-to-reference-excel-workbooks-and-sheets-using-vba/
Nazaj na vrh
Skrit Poglej uporabnikov profil Pošlji zasebno sporočilo
rimci
Član
Član



Pridružen-a: Sre 30 Apr 2003 19:01
Prispevkov: 440
Aktiv.: 3.04
Kraj: Prekmurje

PrispevekObjavljeno: Pon Sep 11, 2017 12:38 pm    Naslov sporočila:   Odgovori s citatom

Ne uspem rešit. Spodnja koda mi shrani aktivni list z imenom zvezka (npr. Zvezek1.xls.TXT). Jaz pa se želim znebiti xls, torej da dobim Zvezek1.txt. Zaradi tega sem uporabil MID, ki pa je formuliram prav...

Koda:
'   Shrani aktivni zvezek v isto mapo kot je Workbook in v format "ime zvezka".TXT
        ActiveSheet.SaveAs Filename:= _
            ThisWorkbook.Path & "\" & ActiveWorkbook.Name & ".TXT", FileFormat:= _
            xlTextPrinter, CreateBackup:=False
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Krampus
Član
Član



Pridružen-a: Pon 08 Sep 2008 13:07
Prispevkov: 1705
Aktiv.: 15.20
Kraj: Središče ob Dravi

PrispevekObjavljeno: Pon Sep 11, 2017 12:57 pm    Naslov sporočila:   Odgovori s citatom

rimci je napisal/a:
Ne uspem rešit. Spodnja koda mi shrani aktivni list z imenom zvezka (npr. Zvezek1.xls.TXT). Jaz pa se želim znebiti xls, torej da dobim Zvezek1.txt. Zaradi tega sem uporabil MID, ki pa je formuliram prav...

Koda:
'   Shrani aktivni zvezek v isto mapo kot je Workbook in v format "ime zvezka".TXT
        ActiveSheet.SaveAs Filename:= _
            ThisWorkbook.Path & "\" & ActiveWorkbook.Name & ".TXT", FileFormat:= _
            xlTextPrinter, CreateBackup:=False
        ActiveSheet.SaveAs Filename:= _
            ThisWorkbook.Path & "\" & Mid(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4, 4) & ".TXT", FileFormat:=xlTextPrinter, CreateBackup:=False


Poskusi takole

_________________
Nisem ravno najbolj pameten na svetu, tu in tam pa imam kakšno idejo.
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo Pošlji E-sporočilo
rimci
Član
Član



Pridružen-a: Sre 30 Apr 2003 19:01
Prispevkov: 440
Aktiv.: 3.04
Kraj: Prekmurje

PrispevekObjavljeno: Pon Sep 11, 2017 3:11 pm    Naslov sporočila:   Odgovori s citatom

Z to kodo dobi zvezek ime ".xls.TXT" Se pravi da ne dobim "ime zvezka.TXT"

Koda:
'   Shrani aktivni zvezek v isto mapo kot je Workbook in v format "ime zvezka".TXT
        ActiveSheet.SaveAs Filename:= _
            ThisWorkbook.Path & "\" & Mid(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4, 4) & ".TXT", FileFormat:=xlTextPrinter, CreateBackup:=False
Nazaj na vrh
Odsoten Poglej uporabnikov profil Pošlji zasebno sporočilo
Pokaži sporočila:   
Objavi novo temo   Odgovori na to temo   Printer-friendly version    www.elektronik.si Seznam forumov -> MS Windows razprave Časovni pas GMT + 2 uri, srednjeevropski - poletni čas
Stran 1 od 1

 
Pojdi na:  
Ne, ne moreš dodajati novih tem v tem forumu
Ne, ne moreš odgovarjati na teme v tem forumu
Ne, ne moreš urejati svojih prispevkov v tem forumu
Ne, ne moreš brisati svojih prispevkov v tem forumu
Ne ne moreš glasovati v anketi v tem forumu
Ne, ne moreš pripeti datotek v tem forumu
Ne, ne moreš povleči datotek v tem forumu

Uptime: 1969 dni


Powered by phpBB © 2001, 2005 phpBB Group