Clever-Excel-Forum

Normale Version: Hilfe bei Schaltfläche
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2 3 4 5
Hallo 

Wir haben auf Arbeit ein Formular bei welchem das Deckblatt mit verschiedenen Lieferantenangaben gefüttert werden muss.
Ebenso muss immer ein recht langer Dateiname beim abspeichern eigegeben werden, nun habe ich mir folgendes überlegt:

Könnte man die Lieferantenangaben in einem DropDown Menü hinterlegen plus eine Schaltfläche "Speichern" einfügt welche dann 
das Dokument am richtigen Ort und mit der richtigen Bezeichnung abspeichert?

Wie kann ich das bewerkstelligen ? 

Danke euch
Hallo,
ein erster Ansatz wäre
Sorry!
Aber warum muss bei einem solchen Pipi-Thema erst eine Datei hochgeladen werden?
Wäre es nicht vielmehr sinnvoll, die zwei Zeilen des Codes zu posten?
Hi zusammen 

Das mit den Lieferanten habe ich jetzt anders gelöst , mit einem Dropdown Menü.
Was ich aber gerne noch hätte wäre eine Schaltfläche "speichern" die ich bereits erstellt habe damit ich nicht jedes mal den ellenlangen Speichernamen eingeben muss.
Allerdings bekomme ich ein "Typen unverträglich"

Code:
Private Sub CommandButton1_Click()


Const Pfad As String = "C:\Users\Documents"

ort = Range("C4")
If Len(ort) = 0 Then
    MsgBox ("Ung?ltiger Dateiname: Die angegebene Zelle darf nicht leer sein!")
Else
    ActiveWorkbook.SaveAs Filename:="C:\Users\Documents\" & Format(DateSerial(Year(ort), Month(ort), 1), "MM YY") & ".xls"
End If

End Sub
Hi,

was steht denn in C4?

Zu deinem Code: wenn du den Pfad schon als Konstante definierst, dann verwende ihn doch auch (wenn du noch ein "\" ans Ende stellst): 

Code:
ActiveWorkbook.SaveAs Filename:=Pfad & Format(DateSerial(Year(ort), Month(ort), 1), "MM YY") & ".xls"
(08.06.2020, 12:21)LuckyJoe schrieb: [ -> ]Hi,

was steht denn in C4?
Im C4 Steht die Artikelbezeichnung.
Die Datei wird bei uns immer wie folgt gespeichert:
Artikel.Nr_Index_02_Bezeichnung_Bestellnummer_Lieferant_Datum

Artikel Nr. in H4 /Index in M4 / Bezeichnung steht in C4 / Bestellnummer in C8 / Lieferant in C6 / Datum in M 6

Kann mir jemand den Code erstellen?
Das wäre Mega Smile
Danke euch 

Zu deinem Code: wenn du den Pfad schon als Konstante definierst, dann verwende ihn doch auch (wenn du noch ein "\" ans Ende stellst): 

Code:
ActiveWorkbook.SaveAs Filename:=Pfad & Format(DateSerial(Year(ort), Month(ort), 1), "MM YY") & ".xls"
Hi,

also du gibst in deinem Code an:


Code:
ort = Range("C4")


Wenn aber in C4 die Artikelbezeichnung steht, dann kann das mit deiner String-Zusammensetzung natürlich Probleme geben.
Die Textzusammensetzung bekommst du mit "&" hin, also z.B.:


Code:
Dateiname = Pfad & Range("H4") & "_" & Range("M4") & "_" & Range("C4") & "_" & Range("C8") & "_" & Range("C6") & "_" & Range("M6")

ggf. M6 noch anpassen wie in deiner bisherigen Formel.
Hallo zusammen 

anbei ein Muster- Dokument.
Könnt ihr mir den Code anpassen, so das wenn ich auf den CommandButton "speichern" drücke, dass Dokument wie folgt abgespeichert wird:
Zeichnungsnummer_Index+IndexNr_Bestellnummer_Lieferant_WEDatum


Danke euch!!

Grüsse
Hi,

das ist jetzt wieder anders , als bei der bisherigen Fragestellung. 
Zunächst zu deiner Tabelle: du solltest auf verbundene Zellen möglichst verzichten, insbesondere, wenn du darin Daten hast, mit denen du weiterarbeiten möchtest.
Zu deinem Code: Du fragst zu Beginn ab, ob die Variable "ort" ab, die es aber nicht gibt, so dass deine Abfrage immer falsch liefert.

Stelle deinen Code mal wie folgt um:
Code:
Private Sub CommandButton1_Click()

    Const Pfad As String = "C:\temp\Test\"
   
    'If Len(ort) = 0 Then
    If False Then
        MsgBox ("Ungültiger Dateiname: Die angegebene Zelle darf nicht leer sein!")
    Else
        ' Zeichnungsnummer_Index+IndexNr_Bestellnummer_Lieferant_WEDatum
        ' Zeichnungsnummer_Index (H4)
        ' IndexNr                (M4)
        ' Bestellnummer          (C8)
        ' Lieferant              (C6)
        ' WEDatum                (M6)
        Debug.Print Pfad & Range("H4") & "_" & "Index" & "_" & Range("M4") & "_" & Range("C8") & "_" & Range("C6") & "_" & Range("M6")
        ActiveWorkbook.SaveAs dateiname = Pfad & Range("H4") & "_" & "Index" & "_" & Range("M4") & "_" & Range("C8") & "_" & Range("C6") & "_" & Range("M6")
    End If

End Sub
Hi

Super danke dir !
Ich werde es heute Abend testen.
Aber wie kann ich es umgehen das ich Zellen verbinde ?
Tee
Seiten: 1 2 3 4 5