Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1536to1540
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Speichern

Speichern
03.02.2017 11:41:37
Housein
Hallo zusammen,
ich möchte per VBA in einem bestimmten Ort (Pfad) speichern. Dateiname soll anhand bestimmte Zellen übernommen werden (Z.B. Rechnungsnr + Kundenname + Gutschrift oder Rechnung). Leider funktioniert meine VBA nicht. Es kommt immer beim ausführen, nicht die gewünschte Dateiname und Ort. Ich hoffe, ihr könnt mir helfen.
Dim sPath As String
Dim Speicherpfad As String
Dim SpeicherpfadDatei As String
Dim Kundenname As String
'NEU
Dim Rechnungen As Worksheet
Set Rechnungen = Sheets("Rechnung")
'NEU
Kundenname = Sheets("Rechnung").Range("k4").Value
'F4=Kundennr und Kundenname
SpeicherpfadDatei = Range("f4").Value
'I15 Rechnung oder Gutschrift
Speicherpfad = Range("i15").Value
'J18:Rechnungsdatum
dat = Range("J18").Value
sPath = "D:\Transport\Yilmaz Housein\Faktura\" & Speicherpfad & "\"
On Error Resume Next
'xx
MkDir sPath & Year(dat)
sPath = sPath & Year(dat) & "\"
MkDir sPath & Kundenname
sPath = sPath & Kundenname & "\"
MkDir sPath & Format(dat, "mm yyyy")
sPath = sPath & Format(dat, "mm yyyy") & "\"
'ActiveSheet.Copy
Worksheets("Rechnung").Copy
ActiveWorkbook.SaveAs sPath & _
Range("j20").Value & " " & Range("K15") & " " & Range("f4") & _
" " & Format(dat, " dd-mm-yyyy") & ".xlsm", FileFormat:=52
ActiveWorkbook.Close

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Speichern
03.02.2017 12:25:10
Matthias
Hallo,
bist du dir sicher, dass du gerade auf dem Tabellenblatt Rechnung bist?
Versuche mal
'NEU
Kundenname = Rechnungen.Range("k4").Value
'F4=Kundennr und Kundenname
SpeicherpfadDatei = Rechnungen.Range("f4").Value
'I15 Rechnung oder Gutschrift
Speicherpfad = Rechnungen.Range("i15").Value
'J18:Rechnungsdatum
dat = Rechnungen.Range("J18").Value
Außerdem falls du nur die WErte für dieses Makro brauchst, kannst du dir deine Variablen sparen und direkt auf die Zellen verweisen
AW: Speichern
03.02.2017 12:44:49
Housein
Hallo,
Danke erst mal für deine Hilfe. Ja, ich bin auf der Tabellenblatt Rechnung.
Ich habe dir die Datei hochgeladen.
https://www.herber.de/bbs/user/111142.zip
Passwort: totoyilo
rechnungsaveprint ist de Modul
Anzeige
AW: Speichern
03.02.2017 13:32:52
Matthias
In welcher Zeile ist den der Fehler? Ist der Pfad noch richtig und stimmt nur der Dateiname nicht?
AW: Speichern
03.02.2017 13:42:48
Matthias
Außerdem würde ich deinen Code mal ein bisschen aufräumen ;)
Du brauchst z.B. nicht die Tabellenblätter erst alle einblenden, nur um sie danach wieder auszublenden
Außerdem erst alle Variablen deklarieren und dann mit dem Code anfangen
Einige von deinen Activate und Select kannst du dir auch sparen http://www.online-excel.de/excel/singsel_vba.php?f=61
Dann hast du mal den Code

Application.Calculation = xlCalculationAutomatic
Warum? http://www.online-excel.de/excel/singsel_vba.php?f=79
Wenn du rechnen lassen willst, geht das mit

Application.Calculate
Nachdem du aufgeräumt hast, wird nicht nur dein Code viel übersichtlicher, es ist für Helfer (und nicht zuletzt dich) auch einfacher, dort den Fehler zu finden
Anzeige
AW: Speichern
04.02.2017 19:15:30
Housein
Hi, habe versucht mein Code ein wenig aufzuräumen. Allerdings komme ich nicht weiter.
Ich möchte mit dem VBA Code folgendes erreichen:
1. Auf dem Lauf D:\Transport\Faktura\Jahr="J15"\Kundenname="K4" Verzeichnis erstellt werden.
2. Um das Verzeichnis erstellen zu können, stehen die Werte auf
J15 = Monat Jahr
K4 = Kundenname
Nur das Excel Sheet also die Tabelle "Rechnung" soll gespeichert werden, mit dem folgenden Namen
J20=Rechnung, K4=Kundenname, J18=Rechnungsdatum.
Allerdings wird nach ausführend des VBA Codes "sollen Ihre Änderungen in "MappeX" gespeichert werden?, wenn ich auf Ja klicke und den Dateinamen eingebe, bekomme ich zusätzlich die Info Die folgenden Features können in Arbeitsmappen ohne Makros nicht gespeichert werden. Ich hoffe, du kannst mir helfen.
Sitze seit Tagen drüber aber komme leider nicht voran.
Hier der Code:
Sheets("Rechnung").Select
' [j20] = [j20] + 1
Range("j20").Value = Range("J20") + 1
'Cells(18, 10).Value = Format(Date, "dd.mm.yyyy")
Dim sPath As String
Dim Speicherpfad As String
Dim SpeicherpfadDatei As String
Dim Kundenname As String
'NEU
Dim Rechnungen As Worksheet
Set Rechnungen = Sheets("Rechnung")
'NEU K4=Kundenname/dort stehen die Kunden Namen
Kundenname = Sheets("Rechnung").Range("k4").Value
'F4=Kundennr und Kundenname
SpeicherpfadDatei = Range("f4").Value
'I15 Rechnung oder Gutschrift
Speicherpfad = Range("i15").Value
'J18:Rechnungsdatum
dat = Range("J18").Value
sPath = "D:\Transport\Yilmaz Housein\Faktura\" & Speicherpfad & "\"
On Error Resume Next
MkDir sPath & Year(dat)
sPath = sPath & Year(dat) & "\"
MkDir sPath & Kundenname
sPath = sPath & Kundenname & "\"
MkDir sPath & Format(dat, "mm yyyy")
sPath = sPath & Format(dat, "mm yyyy") & "\"
Worksheets("Rechnung").Copy
'J20 = Rechnungsnummer
'J15 = Monat Jahr
'F4 = Kundennummer und Kundenname
ActiveWorkbook.SaveAs sPath & _
Range("j20").Value & " " & Range("J15") & " " & Range("f4") & _
" " & Format(dat, " dd-mm-yyyy") & ".xlsm", FileFormat:=xlOpenXMLWorkbookMacroEnabled
ActiveWorkbook.Close
Anzeige
AW: Speichern
07.02.2017 19:36:02
onur
Hi,
Ich brauche schon die komplette Datei (ohne Passwort, mit Code usw.).
Gruß
Onur
AW: Speichern
08.02.2017 13:56:53
Housein
Hallo Onur,
hier die Datei ohne Passwort.
Hinweis: Tabellenblatt "Rechnung" öffnen.
Modul: Rechnungsaveprint öffnen.
https://www.herber.de/bbs/user/111311.zip
Danke.
Gruß
Yilmaz
AW: Speichern
09.02.2017 09:24:52
Housein
Hallo Onur,
ich habe mich nicht vertippt. In der Zelle ist Kundennummer mit Kundenname enthalten.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige