Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: einzelne Tabelle aus einer Arbeitsmappe speichern

einzelne Tabelle aus einer Arbeitsmappe speichern
26.08.2005 18:08:59
Rudi
Hallo Ihr tollen Helfer,
Problem: .einzelne Tabelle aus einer Arbeitsmappe speichern (Name der Tabelle: "MASKE".
Ich hab folgendes Makro gefunden.
Meine Frage dazu.
Kann mir jemand es so abändern, dass der Blattname der Gleiche bleibt, allerdings als Dateiname der Wert aus Feldnamen: „MANR“ und als Zielverzeichnis der Wert aus Feldname: „Path“ automatisch verwendet wird?

Sub BlattSpeichern()
Dim sPath As String, sWks As String, sFile As String
Dim index%
On Error GoTo ErrH
sPath = Application.DefaultFilePath
If (Right(sPath, 1) <> "\") Then sPath = sPath & "\"
sWks = InputBox(prompt:="Blattname", _
Default:=BLATTNAME$)
If ((sWks = "") Or _
(InStr(1, sWks, ":") > 0) Or _
(InStr(1, sWks, "\") > 0) Or _
(InStr(1, sWks, "/") > 0) Or _
(InStr(1, sWks, "?") > 0) Or _
(InStr(1, sWks, "*") > 0) Or _
(InStr(1, sWks, "[") > 0) Or _
(InStr(1, sWks, "]") > 0) Or _
(Len(sWks) > 31)) Then sWks = BLATTNAME$
sFile = InputBox(prompt:="Dateiname", _
Default:=sPath & DATEINAME$ & ".xls")
ActiveSheet.Copy
ActiveSheet.Name = sWks
ActiveWorkbook.SaveAs sFile
MsgBox "Tabelle kopiert als : " & sWks & vbCrLf & _
"In Verzeichniss : " & ActiveWorkbook.Path & vbCrLf & _
"Mit dem Namen : " & ActiveWorkbook.Name, vbInformation
Exit Sub
ErrH:
' falls versucht datei mehrmals mit dem selben namen in den selben verz.
' zu speichern -> exception 1004 -> neue dateineme := dateiname + index% -> neuer versuch datei zu speichern
If (Err.Number = 1004) Then
If (index% < 1000) Then
index% = index% + 1
sFile = sPath & DATEINAME$ & index% & ".xls"
Resume
Else
MsgBox "Variable index% zu Hoch!", vbCritical: End
End If
Else
MsgBox "Laufzeitfehler : " & vbCrLf & Err.Description & vbCrLf & "Fehlernummer : " & Err.Number, vbCritical
End If
End Sub

gruss rudiflei
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: einzelne Tabelle aus einer Arbeitsmappe speich
26.08.2005 20:02:08
Ramses
Hallo
mal auf die ganz einfache Art:

Sub Save_Sheet()
Worksheets("Maske").Copy
If right(Range("Path"),1="\" then
ActiveWorkbook.SaveAs Range("Path") & Range("MANR")
Else
ActiveWorkbook.SaveAs Range("Path") & "\" Range("MANR")
End If
End Sub

Ungetestet, sollte aber tun
Gruss Rainer
Anzeige
Kleine Korrektur :-(
26.08.2005 20:03:35
Ramses
Hallo
Sorry. Anstelle von
If right(Range("Path"),1="\" then
muss es natürlich heissen
If right(Range("Path"),1)="\" then
Gruss Rainer
AW: Kleine Korrektur :-(
26.08.2005 22:00:53
Rudi
hier stimmt auch was nicht:
ActiveWorkbook.SaveAs Range("Path") & "\" Range("MANR")
gruss rudiflei
AW: Kleine Korrektur :-(
26.08.2005 22:09:12
Ramses
Hallo
da fehlt noch ein "&"
ActiveWorkbook.SaveAs Range("Path") & "\" & Range("MANR")
Ist doch gar nicht so kompliziert,... oder ?
Gruss Rainer
Anzeige
AW: Kleine Korrektur :-(
27.08.2005 09:16:00
Rudi
Prima, toll gemacht
danke für die Hilfe. Funktioniert optimal!
gruss rudiflei
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige