Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1612to1616
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

Speicherformatwahl verbergen

Speicherformatwahl verbergen
18.03.2018 22:01:41
Bianca85
Liebe alle,
das Forum ist einfach super. Ich bin zwar vba Anfängerin, aber allein durchs Lesen lerne ich sehr viel dazu.
Heute möchte ich eine gewisse Funktion für andere User ausschalten.
Und zwar schicke ich unseren Mitarbeitern eine Excel im Format xltm. Die Mitarbeiter tragen ihre Daten ein und schicken mir die Liste wieder retour, damit ich mit den darin enthaltenen Daten ein Wordfile erstellen kann.
Jetzt befürchte ich aber, dass meine lieben Kollegen die Datei einfach als xlsx speichern und somit wären meine schönen Makros weg.
Kann man bei speichern / speichern unter einen gewisses Format vorgeben?
Danke und liebe Grüße,
Bianca

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Speicherformatwahl verbergen
18.03.2018 22:14:11
Bianca85
Wer lesen kann, ist klar im Vorteil
Hab hier im Forum diesen Code gefunden:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim Datei As Variant
If SaveAsUI Then
Cancel = True
Do
Datei = Application.GetSaveAsFilename
If VarType(Datei)  vbString Then Exit Do
Datei = Left(Datei, InStrRev(Datei, ".")) & "xlsm"
If Dir(Datei)  "" Then
Select Case MsgBox("Datei existiert schon, überschreiben?", vbQuestion + _
vbYesNoCancel)
Case vbYes
Kill Datei
Me.SaveAs Datei, xlOpenXMLWorkbookMacroEnabled
Exit Do
Case vbNo
Case vbCancel
Exit Do
End Select
Else
Me.SaveAs Datei, xlOpenXMLWorkbookMacroEnabled
Exit Do
End If
Loop
End If
End Sub
Hier erlaubt das Speichern unter Fenster nur die Auswahl des Dateinamens. Bin begeistert :)
Liebe Grüße,
Bianca
Anzeige
AW: Speicherformatwahl verbergen
18.03.2018 23:03:03
fcs
Hallo Biana,
wenn du den Mitarbeitern auf dem Formular eine Speichern-Schaltfläche anbietest, dann kannst du mit folgendem Makro arbeiten:
'in einem allgemeinen Code-Modul
'Variablen-Deklaration oben im Code-Modul
Public pbolSpeichern As Boolean 'Merker, dass Speichern per Makro ausgeführt wird
Sub Speichern()
pbolSpeichern = True
Application.Dialogs(xlDialogSaveAs).Show "Antwort " & VBA.Environ("Username"), 52 _
'52 = xlsm-Datei
pbolSpeichern = False
End Sub

zusätzlich ist unter "DieseArbeitsmappe" ein Ereignismakro erforderlich, das den normalen Speichervorgang abbricht, wenn die Merker-Variable den Wert Falsch hat.
'Unter DieseArbeitsmappe
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
If pbolSpeichern = False Then
MsgBox "Bitte zum Speichern die Schaltfläche im Formular verwenden"
Cancel = True
End If
End Sub

Das garantiert noch nicht zu 100% - denn ein Mitarbeiter kann im Dialog immer noch den Dateityp ändern.
Alternativ kannst du den Code zum Übertragen in die Word-Datei auch in deiner persönlichen Makroarbeitsmappe speichern. ggf. musst du dann noch Anpassungen machen, um die Objekte in der Formular-Datei korrekt anzusprechen.
Gruß
Franz
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige