|
www.elektronik.si Forum o elektrotehniki in računalništvu
|
Poglej prejšnjo temo :: Poglej naslednjo temo |
Avtor |
Sporočilo |
rimci Član
Pridružen-a: Sre 30 Apr 2003 19:01 Prispevkov: 461 Aktiv.: 2.07 Kraj: Prekmurje
|
Objavljeno: Sob Sep 09, 2017 10:07 pm Naslov sporočila: Excel |
|
|
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 |
|
|
mkezmah Član
Pridružen-a: Sre 21 Jan 2009 16:30 Prispevkov: 220 Aktiv.: 1.18 Kraj: Maribor
|
Objavljeno: Pon Sep 11, 2017 7:37 am Naslov sporočila: |
|
|
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 |
|
|
rimci Član
Pridružen-a: Sre 30 Apr 2003 19:01 Prispevkov: 461 Aktiv.: 2.07 Kraj: Prekmurje
|
Objavljeno: Pon Sep 11, 2017 12:38 pm Naslov sporočila: |
|
|
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 |
|
|
Krampus Član
Pridružen-a: Pon 08 Sep 2008 13:07 Prispevkov: 1826 Aktiv.: 9.60
|
Objavljeno: Pon Sep 11, 2017 12:57 pm Naslov sporočila: |
|
|
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 |
|
|
rimci Član
Pridružen-a: Sre 30 Apr 2003 19:01 Prispevkov: 461 Aktiv.: 2.07 Kraj: Prekmurje
|
Objavljeno: Pon Sep 11, 2017 3:11 pm Naslov sporočila: |
|
|
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 |
|
|
|
|
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: 73 dni
Powered by phpBB © 2001, 2005 phpBB Group
|