Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Makro pro uložení Wordu

Hm, skusal si to cez premennu? V podstate potrebujes vygenerovat novy nazov suboru z polozky Excelovskej databazy. Teraz neviem, ci sa vobec da preniest premenna z Exceku do Wordu, ale napadol ma dost krkolomny sposob, ako by sa to dalo urobit. V Exceli spravis makro, ktore ti vygeneruje prazdny subor s nazvom, ktory potrebujes pre Word, ale s priponou xls.

Nieco ako
Sub Makro_VytvorZosit
Dim NovyNazov as String

Workbooks.Add

NovyNazov = "C:\PomocnyAdresar\" & Cstr (ActiveCell.Value) & ".xls" 'kurzor je na bunke s prislusnym c. jednacim
ActiveWorkbook.SaveAs Filename:= Novy Nazov
ActiveWorkbook.Close

End Sub

Potom do svojho existujuceho makra /toho co ti vytvara novy subor na editovanie/ z Wordu zistis meno /jedineho/ suboru v Zlozke C:\PomocnyAdresar


Sub Makro_ZistiNazov()
Dim Novy Nazov as String

With Application.FileSearch
.LookIn = "C:\PomocnyAdresar"
.Filename = *.*
.Execute
End With

NovyNazov = Right (Application.FileSearch.FoundFiles(1),4) 'odstrani z nazvu posledne 4 pismena teda .xls

NovyNazov = "Zlozka do ktorej chces ulozit subor na upravu" & NovyNazov & ".docx

ActiveDocument.SaveAs Filename:= Novy nazov

End Sub


Je silne pravdepododne, ze existuje aj elegantnejsi sposob na prenos premennej, ale toto by malo fungovat. Samozrejme, zo zlozky PomocnyAdresar treba vzdy nasledne odstranit ten prazdny excelovsky subor.
Este moze byt problem s tym Application.FileSEarch, mam taky pocit, ze to z 2007 odstranili /ja robim v 2003/, potom by sa muselo ist cez FSO objekt /viac na: http://officir.ic.cz/chipex05/10/excel_vba_jine.ht ml

Dufam ze ti to pomoze.

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny