App installieren
How to install the app on iOS
Follow along with the video below to see how to install our site as a web app on your home screen.
Anmerkung: This feature may not be available in some browsers.
Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden.
Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Dateiname wird per VBA generiert, wie erweitern?
- Ersteller Peter1984
- Erstellt am
Peter1984
Grand Admiral Special
- Mitglied seit
- 17.06.2002
- Beiträge
- 4.904
- Renomée
- 17
- Standort
- Mainfranken
- Mein Laptop
- Asus Eee PC 901
- Prozessor
- AMD Phenom II X4 940 @ ~3,5 Ghz
- Mainboard
- Gigabyte GA-MA790GP-DS4H
- Kühlung
- Arctic Cooling Freezer Xtreme mit Scythe S-Flex 1900 Lüfter
- Speicher
- 4 GB RAM (2x2 GB) PC 1066
- Grafikprozessor
- Gigabyte Radeon HD5850 1024 MB
- Display
- Samsung 245B, 24", 1920*1200
- HDD
- 2x500 GB S-ATA WD AAKS RAID 1
- Optisches Laufwerk
- BR-LW LG
- Soundkarte
- Realtek HD Audio
- Gehäuse
- Enermax Vostok weiß
- Netzteil
- Enermax 380W
- Betriebssystem
- Windows 7 Pro 64 Bit
- Webbrowser
- Firefox 3.6
Hi, folgenden Code-Schipsel habe ich von einem Studienkollegen programmiert bekommen:
Die Datei, die generiert wird, hat das Format Jahr-Rechnungsnummer.docx (z.B. 2010-1234.docx).
Es wäre schön, wenn nach der Rechnungsnummer noch der Eintrag aus "<<line1>>" stehen würde, z.b. 2010-1234-Kunde.docx.
Code-Zeile ist müsste die 4. von unten sein.
Kriegs aber leider nicht hin, kann mir bitte jemand kurz auf die Sprünge helfen?
Danke schonmal!
Code:
Sub businessBill()
Dim wdObject As Object
Dim rechnungsnr As String
Set wdObject = CreateObject("Word.Application")
wdObject.Visible = False
wdObject.Documents.Open (Application.ActiveWorkbook.Path & "\Rechnungsvorlage-gewerblich.dotx")
If (Cells(Application.ActiveCell.Row, 3).Value <> "" And Cells(Application.ActiveCell.Row, 4).Value <> "") Then
Set wdObject = replaceText(wdObject, "<<line1>>", Cells(Application.ActiveCell.Row, 2))
Set wdObject = replaceText(wdObject, "<<line2>>", "z.H. " & Cells(Application.ActiveCell.Row, 3) & " " & Cells(Application.ActiveCell.Row, 4))
Set wdObject = replaceText(wdObject, "<<line3>>", Cells(Application.ActiveCell.Row, 5))
Set wdObject = replaceText(wdObject, "<<line4>>", Cells(Application.ActiveCell.Row, 6) & " " & Cells(Application.ActiveCell.Row, 7))
Else
Set wdObject = replaceText(wdObject, "<<line1>>", Cells(Application.ActiveCell.Row, 2))
Set wdObject = replaceText(wdObject, "<<line2>>", Cells(Application.ActiveCell.Row, 5))
Set wdObject = replaceText(wdObject, "<<line3>>", Cells(Application.ActiveCell.Row, 6) & " " & Cells(Application.ActiveCell.Row, 7))
Set wdObject = replaceText(wdObject, "<<line4>>", "")
End If
rechnungsnr = getBillNumber
Set wdObject = replaceText(wdObject, "<<kdn>>", Cells(Application.ActiveCell.Row, 1))
Set wdObject = replaceText(wdObject, "<<rnr>>", DatePart("yyyy", Date) & "-" & rechnungsnr)
Set wdObject = replaceText(wdObject, "<<datum>>", Date)
wdObject.ActiveDocument.SaveAs (Application.ActiveWorkbook.Path & "\" & DatePart("yyyy", Date) & "-" & rechnungsnr & ".docx")
wdObject.Visible = True
incrementBillNumber
End Sub
Die Datei, die generiert wird, hat das Format Jahr-Rechnungsnummer.docx (z.B. 2010-1234.docx).
Es wäre schön, wenn nach der Rechnungsnummer noch der Eintrag aus "<<line1>>" stehen würde, z.b. 2010-1234-Kunde.docx.
Code-Zeile ist müsste die 4. von unten sein.
Kriegs aber leider nicht hin, kann mir bitte jemand kurz auf die Sprünge helfen?
Danke schonmal!
Dematerialisierer
Commodore Special
- Mitglied seit
- 10.10.2007
- Beiträge
- 477
- Renomée
- 7
- Standort
- HH
- Mein Laptop
- Asus G1S
- Prozessor
- i7-3770k
- Mainboard
- Asus Maximus V Gene
- Kühlung
- Prolimatech Super Mega @NB e-Loop B12-PS
- Speicher
- 2 x 4GB Crucial Ballistix Elite
- Grafikprozessor
- Gigabyte GTX670 WF3 OC
- Display
- HP ZR2440w @1920x1200
- SSD
- Crucial MX100 512GB
- HDD
- WD Caviar Green 500GB / WD Caviar Black 500GB SATA2
- Optisches Laufwerk
- LiteOn LH20A1S DVD-Brenner
- Gehäuse
- LianLi PC7 SEBIII
- Netzteil
- Enermax MODU 82+ 625W
- Betriebssystem
- Win7 64bit
EDIT:
Hmm - So vielleicht!?
Gruß
Code:Sub businessBill() Dim wdObject As Object Dim rechnungsnr As String [COLOR="Red"]Dim KNr As String[/COLOR] Set wdObject = CreateObject("Word.Application") wdObject.Visible = False wdObject.Documents.Open (Application.ActiveWorkbook.Path & "\Rechnungsvorlage-gewerblich.dotx") If (Cells(Application.ActiveCell.Row, 3).Value <> "" And Cells(Application.ActiveCell.Row, 4).Value <> "") Then Set wdObject = replaceText(wdObject, "<<line1>>", Cells(Application.ActiveCell.Row, 2)) [COLOR="Red"]KNr = Cells(Application.ActiveCell.Row, 2).Value[/COLOR] Set wdObject = replaceText(wdObject, "<<line2>>", "z.H. " & Cells(Application.ActiveCell.Row, 3) & " " & Cells(Application.ActiveCell.Row, 4)) Set wdObject = replaceText(wdObject, "<<line3>>", Cells(Application.ActiveCell.Row, 5)) Set wdObject = replaceText(wdObject, "<<line4>>", Cells(Application.ActiveCell.Row, 6) & " " & Cells(Application.ActiveCell.Row, 7)) Else Set wdObject = replaceText(wdObject, "<<line1>>", Cells(Application.ActiveCell.Row, 2)) [COLOR="Red"]KNr = Cells(Application.ActiveCell.Row, 2).Value[/COLOR] Set wdObject = replaceText(wdObject, "<<line2>>", Cells(Application.ActiveCell.Row, 5)) Set wdObject = replaceText(wdObject, "<<line3>>", Cells(Application.ActiveCell.Row, 6) & " " & Cells(Application.ActiveCell.Row, 7)) Set wdObject = replaceText(wdObject, "<<line4>>", "") End If rechnungsnr = getBillNumber Set wdObject = replaceText(wdObject, "<<kdn>>", Cells(Application.ActiveCell.Row, 1)) Set wdObject = replaceText(wdObject, "<<rnr>>", DatePart("yyyy", Date) & "-" & rechnungsnr) Set wdObject = replaceText(wdObject, "<<datum>>", Date) wdObject.ActiveDocument.SaveAs (Application.ActiveWorkbook.Path & "\" & DatePart("yyyy", Date) & "-" & rechnungsnr [COLOR="Red"]& "-" & KNr[/COLOR] & ".docx") wdObject.Visible = True incrementBillNumber End Sub
Hmm - So vielleicht!?
Gruß
Zuletzt bearbeitet:
Peter1984
Grand Admiral Special
- Mitglied seit
- 17.06.2002
- Beiträge
- 4.904
- Renomée
- 17
- Standort
- Mainfranken
- Mein Laptop
- Asus Eee PC 901
- Prozessor
- AMD Phenom II X4 940 @ ~3,5 Ghz
- Mainboard
- Gigabyte GA-MA790GP-DS4H
- Kühlung
- Arctic Cooling Freezer Xtreme mit Scythe S-Flex 1900 Lüfter
- Speicher
- 4 GB RAM (2x2 GB) PC 1066
- Grafikprozessor
- Gigabyte Radeon HD5850 1024 MB
- Display
- Samsung 245B, 24", 1920*1200
- HDD
- 2x500 GB S-ATA WD AAKS RAID 1
- Optisches Laufwerk
- BR-LW LG
- Soundkarte
- Realtek HD Audio
- Gehäuse
- Enermax Vostok weiß
- Netzteil
- Enermax 380W
- Betriebssystem
- Windows 7 Pro 64 Bit
- Webbrowser
- Firefox 3.6
Wie du Recht hast!
Problem gelöst, vielen Dank!
Problem gelöst, vielen Dank!
Dematerialisierer
Commodore Special
- Mitglied seit
- 10.10.2007
- Beiträge
- 477
- Renomée
- 7
- Standort
- HH
- Mein Laptop
- Asus G1S
- Prozessor
- i7-3770k
- Mainboard
- Asus Maximus V Gene
- Kühlung
- Prolimatech Super Mega @NB e-Loop B12-PS
- Speicher
- 2 x 4GB Crucial Ballistix Elite
- Grafikprozessor
- Gigabyte GTX670 WF3 OC
- Display
- HP ZR2440w @1920x1200
- SSD
- Crucial MX100 512GB
- HDD
- WD Caviar Green 500GB / WD Caviar Black 500GB SATA2
- Optisches Laufwerk
- LiteOn LH20A1S DVD-Brenner
- Gehäuse
- LianLi PC7 SEBIII
- Netzteil
- Enermax MODU 82+ 625W
- Betriebssystem
- Win7 64bit
Gerne!
Gruß
Gruß
Peter1984
Grand Admiral Special
- Mitglied seit
- 17.06.2002
- Beiträge
- 4.904
- Renomée
- 17
- Standort
- Mainfranken
- Mein Laptop
- Asus Eee PC 901
- Prozessor
- AMD Phenom II X4 940 @ ~3,5 Ghz
- Mainboard
- Gigabyte GA-MA790GP-DS4H
- Kühlung
- Arctic Cooling Freezer Xtreme mit Scythe S-Flex 1900 Lüfter
- Speicher
- 4 GB RAM (2x2 GB) PC 1066
- Grafikprozessor
- Gigabyte Radeon HD5850 1024 MB
- Display
- Samsung 245B, 24", 1920*1200
- HDD
- 2x500 GB S-ATA WD AAKS RAID 1
- Optisches Laufwerk
- BR-LW LG
- Soundkarte
- Realtek HD Audio
- Gehäuse
- Enermax Vostok weiß
- Netzteil
- Enermax 380W
- Betriebssystem
- Windows 7 Pro 64 Bit
- Webbrowser
- Firefox 3.6
Abschuss wäre jetzt noch das Tagesdatum im Dateinamen!
Dematerialisierer
Commodore Special
- Mitglied seit
- 10.10.2007
- Beiträge
- 477
- Renomée
- 7
- Standort
- HH
- Mein Laptop
- Asus G1S
- Prozessor
- i7-3770k
- Mainboard
- Asus Maximus V Gene
- Kühlung
- Prolimatech Super Mega @NB e-Loop B12-PS
- Speicher
- 2 x 4GB Crucial Ballistix Elite
- Grafikprozessor
- Gigabyte GTX670 WF3 OC
- Display
- HP ZR2440w @1920x1200
- SSD
- Crucial MX100 512GB
- HDD
- WD Caviar Green 500GB / WD Caviar Black 500GB SATA2
- Optisches Laufwerk
- LiteOn LH20A1S DVD-Brenner
- Gehäuse
- LianLi PC7 SEBIII
- Netzteil
- Enermax MODU 82+ 625W
- Betriebssystem
- Win7 64bit
Ändere einfach:
...& "-" & KNr & ".docx" in
...& "-" & KNr & "-" & Date & ".docx"
Das wäre dann ...-24.02.2010.docx
- Hat Dein Kollege ja auch schonmal verwendet. Date macht dasselbe wie "= HEUTE()" in Exceltabellen!
Gruß
EDIT:
Wobei ich irgendwie Unterstriche statt Bindestrichen nehmen würde - aber das kannst Du ja bei Bedarf beliebig anpassen!
Das System bleibt ja immer gleich: in *" "* kommt der Text / *ohne " "* dann die Variablen (Deine oder Programmeigene wie Date) / dann einfach den Plunder mit *&* verbinden!
...& "-" & KNr & ".docx" in
...& "-" & KNr & "-" & Date & ".docx"
Das wäre dann ...-24.02.2010.docx
- Hat Dein Kollege ja auch schonmal verwendet. Date macht dasselbe wie "= HEUTE()" in Exceltabellen!
Gruß
EDIT:
Wobei ich irgendwie Unterstriche statt Bindestrichen nehmen würde - aber das kannst Du ja bei Bedarf beliebig anpassen!
Das System bleibt ja immer gleich: in *" "* kommt der Text / *ohne " "* dann die Variablen (Deine oder Programmeigene wie Date) / dann einfach den Plunder mit *&* verbinden!
Zuletzt bearbeitet:
Peter1984
Grand Admiral Special
- Mitglied seit
- 17.06.2002
- Beiträge
- 4.904
- Renomée
- 17
- Standort
- Mainfranken
- Mein Laptop
- Asus Eee PC 901
- Prozessor
- AMD Phenom II X4 940 @ ~3,5 Ghz
- Mainboard
- Gigabyte GA-MA790GP-DS4H
- Kühlung
- Arctic Cooling Freezer Xtreme mit Scythe S-Flex 1900 Lüfter
- Speicher
- 4 GB RAM (2x2 GB) PC 1066
- Grafikprozessor
- Gigabyte Radeon HD5850 1024 MB
- Display
- Samsung 245B, 24", 1920*1200
- HDD
- 2x500 GB S-ATA WD AAKS RAID 1
- Optisches Laufwerk
- BR-LW LG
- Soundkarte
- Realtek HD Audio
- Gehäuse
- Enermax Vostok weiß
- Netzteil
- Enermax 380W
- Betriebssystem
- Windows 7 Pro 64 Bit
- Webbrowser
- Firefox 3.6
Danke!
Man lernt halt einfach nicht aus - ist aber auch gut so!
Man lernt halt einfach nicht aus - ist aber auch gut so!
Dematerialisierer
Commodore Special
- Mitglied seit
- 10.10.2007
- Beiträge
- 477
- Renomée
- 7
- Standort
- HH
- Mein Laptop
- Asus G1S
- Prozessor
- i7-3770k
- Mainboard
- Asus Maximus V Gene
- Kühlung
- Prolimatech Super Mega @NB e-Loop B12-PS
- Speicher
- 2 x 4GB Crucial Ballistix Elite
- Grafikprozessor
- Gigabyte GTX670 WF3 OC
- Display
- HP ZR2440w @1920x1200
- SSD
- Crucial MX100 512GB
- HDD
- WD Caviar Green 500GB / WD Caviar Black 500GB SATA2
- Optisches Laufwerk
- LiteOn LH20A1S DVD-Brenner
- Gehäuse
- LianLi PC7 SEBIII
- Netzteil
- Enermax MODU 82+ 625W
- Betriebssystem
- Win7 64bit
Danke!
Man lernt halt einfach nicht aus - ist aber auch gut so!
Das stimmt - hab schon mehr als einmal in die Tastatur gebissen weil mit VBA irgendetwas mal wieder nicht gefunzt hat!
Aber mit solchen kleinen Programmen lernt man das wesentlich besser als mit Büchern oder in Vorträgen! - Immer ordentlich rumprobieren!
Gruß
- Mitglied seit
- 16.11.2001
- Beiträge
- 21.665
- Renomée
- 1.249
- Standort
- München
- Aktuelle Projekte
- World Community Grid
- Lieblingsprojekt
- Folding@Home
- Meine Systeme
- AMD Ryzen 9 5950X
- BOINC-Statistiken
- Folding@Home-Statistiken
- Prozessor
- AMD Ryzen 9 5950X
- Mainboard
- ASUS TUF Gaming X570-Pro [WI-FI]
- Kühlung
- be quiet! Shadow Rock 3
- Speicher
- 4x 16GB DDR4-3200 Corsair Vengeance LPX
- Grafikprozessor
- ASRock Radeon RX 550 Phantom Gaming Aktiv 2GB
- Display
- LG 27UL850-W, 27"
- SSD
- Samsung 980 PRO 2TB, Samsung 840 EVO 500GB
- HDD
- Seagate Barracuda 7200.14 3TB SATA3
- Optisches Laufwerk
- Samsung SH-S183A SATA schwarz (im externen Gehäuse)
- Gehäuse
- be quiet! Silent Base 802 schwarz
- Netzteil
- be quiet! Straight Power 11 Platinum 550W
- Tastatur
- Logitech G613 Lightspeed
- Maus
- Logitech M510
- Betriebssystem
- Ubuntu Linux 22.04
- Webbrowser
- Vivaldi
- Internetanbindung
-
▼100 MBit
▲40 MBit
Auf englischen Systemen führt das zu Problemen, da dann Slashes im Dateinamen auftauchen.Ändere einfach:
...& "-" & KNr & ".docx" in
...& "-" & KNr & "-" & Date & ".docx"
Das wäre dann ...-24.02.2010.docx
Peter1984
Grand Admiral Special
- Mitglied seit
- 17.06.2002
- Beiträge
- 4.904
- Renomée
- 17
- Standort
- Mainfranken
- Mein Laptop
- Asus Eee PC 901
- Prozessor
- AMD Phenom II X4 940 @ ~3,5 Ghz
- Mainboard
- Gigabyte GA-MA790GP-DS4H
- Kühlung
- Arctic Cooling Freezer Xtreme mit Scythe S-Flex 1900 Lüfter
- Speicher
- 4 GB RAM (2x2 GB) PC 1066
- Grafikprozessor
- Gigabyte Radeon HD5850 1024 MB
- Display
- Samsung 245B, 24", 1920*1200
- HDD
- 2x500 GB S-ATA WD AAKS RAID 1
- Optisches Laufwerk
- BR-LW LG
- Soundkarte
- Realtek HD Audio
- Gehäuse
- Enermax Vostok weiß
- Netzteil
- Enermax 380W
- Betriebssystem
- Windows 7 Pro 64 Bit
- Webbrowser
- Firefox 3.6
Wie würde es dann auf englischen Systemen am besten gelöst?
Dematerialisierer
Commodore Special
- Mitglied seit
- 10.10.2007
- Beiträge
- 477
- Renomée
- 7
- Standort
- HH
- Mein Laptop
- Asus G1S
- Prozessor
- i7-3770k
- Mainboard
- Asus Maximus V Gene
- Kühlung
- Prolimatech Super Mega @NB e-Loop B12-PS
- Speicher
- 2 x 4GB Crucial Ballistix Elite
- Grafikprozessor
- Gigabyte GTX670 WF3 OC
- Display
- HP ZR2440w @1920x1200
- SSD
- Crucial MX100 512GB
- HDD
- WD Caviar Green 500GB / WD Caviar Black 500GB SATA2
- Optisches Laufwerk
- LiteOn LH20A1S DVD-Brenner
- Gehäuse
- LianLi PC7 SEBIII
- Netzteil
- Enermax MODU 82+ 625W
- Betriebssystem
- Win7 64bit
Auf englischen Systemen führt das zu Problemen, da dann Slashes im Dateinamen auftauchen.
Wie auf der Arbeit!
Stimmt aber leider. Mal abgesehen von den Versionsproblemen kann man selbst bei kleinsten Schlupflöchern im Code davon ausgehen, daß der DAU-Kollege gegenüber die Datei zerschießt!
Wie würde es dann auf englischen Systemen am besten gelöst?
Mach's z.B. halt so:
...& "_" & Format(Date, "DD_MM_YYYY") & ".docx"
Im Roten kannst Du das Format dann exakt nach Deinem Gusto ändern (Binde- statt Unterstriche / 10 statt 2010 usw.)!
Gruß
Zuletzt bearbeitet:
Ähnliche Themen
- Antworten
- 1
- Aufrufe
- 536
- Antworten
- 0
- Aufrufe
- 829