Thema Datum  Von Nutzer Rating
Antwort
27.11.2009 09:09:59 Brigitte
NotSolved
Blau Aw:resume.xlw vermeiden
30.11.2009 12:56:19 Holger
NotSolved

Ansicht des Beitrags:
Von:
Holger
Datum:
30.11.2009 12:56:19
Views:
810
Rating: Antwort:
  Ja
Thema:
Aw:resume.xlw vermeiden
Hallo Brigitte,
ohne dein Problem wirklich zu lösen (habe ich mir nicht weiter angesehen, da umfangreich), schlage ich vor, mit SendKeys einfach die vom Nutzer erwartete Anwort einzusteuern.
Gruß
Holger

Brigitte schrieb am 27.11.2009 09:09:59:

Hallo zusammen,

ich habe ein kleines Problem:
Um ein konsistentes Versions-Management zu gewährleisten, soll das Workbook bei größeren Veränderungen automatisiert (also mit einem vorgegebenen Namen) abgespeichert werden.

Hierzu mein (gesamter) Code:

Option Explicit
Public ExportDate As Date

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
On Error Resume Next
Dim Canc As Boolean
Datenstand = Range("Datum")
Application.DisplayAlerts = False
If Datenstand <> ExportDate Or FileUser <> Application.UserName Then
Canc = Application.Dialogs(xlDialogSaveAs).show(DateiName)
If Canc = False Then End
Else: Application.Save
End If
Application.DisplayAlerts = True
End Sub

Private Sub Workbook_Open()
ExportDate = Range("Datum")
End Sub
____________________________________________________________________________________

Option Explicit
Dim SheetName As String, stateStr As String
Dim ExportDatum As Date, DatenDatum As Date
Dim projekt As String

Public Property Let stateText(str As String)
stateStr = str
End Property
Public Property Get stateText() As String
stateText = stateStr
End Property

Public Property Let Datenstand(i As String)
ExportDatum = i
End Property
Public Property Get Datenstand() As String
Datenstand = ExportDatum
End Property

Public Property Get DNRS() As String
DNRS = Left(ThisWorkbook.name, InStr(ThisWorkbook.name, ".") - 1)
DNRS = Right(DNRS, Len(DNRS) - (InStr(DNRS, "_")))
DNRS = Left(DNRS, InStrRev(DNRS, "_") - 1)
End Property

Public Property Get ExportTag() As String
ExportTag = Left(Datenstand, InStr(Datenstand, ".") - 1)
End Property

Public Property Get ExportMonat() As String
ExportMonat = Left(Right(Datenstand, InStrRev(Datenstand, ".") + 1), InStr(Right(Datenstand, _
_
InStrRev(Datenstand, ".") + 1), ".") - 1)
End Property

Public Property Get ExportJahr() As String
ExportJahr = Right(Datenstand, InStr(Datenstand, ".") + 1)
End Property
Public Property Get ProjektStr() As String
If Worksheets(newSheet).Range("projekt") Like "*AU*" Then
ProjektStr = "Projekt1"
Else: ProjektStr = "Projekt2"
End If
End Property

Public Property Get FileUser() As String
FileUser = Right(Left(ThisWorkbook.name, InStr(ThisWorkbook.name, ".") - 1), Len(Left( _
ThisWorkbook.name, InStr(ThisWorkbook.name, ".") - 1)) - InStrRev(Left(ThisWorkbook.name, InStr( _
_
ThisWorkbook.name, ".") - 1), "_"))
End Property

Public Property Get FileProjektStr() As String
FileProjektStr = Right(Left(DNRS, InStrRev(DNRS, "_") - 1), Len(Left(DNRS, InStrRev(DNRS, "_" _
_
) - 1)) - InStr(DNRS, "_"))
End Property

Public Property Get FileStarter()
FileStarter = Left(DNRS, InStr(DNRS, "_") - 1)
End Property

Public Property Get FileVersion() As String
FileVersion = Right(Right(DNRS, Len(DNRS) - InStr(DNRS, "_")), Len(Right(DNRS, Len(DNRS) - _
_
InStr(DNRS, "_"))) - InStr(Right(DNRS, Len(DNRS) - InStr(DNRS, "_")), "_"))
End Property

Public Property Get DateiName() As String
DateiName = ExportJahr & ExportMonat & ExportTag & "_" & _
FileStarter & "_" & ProjektStr & "_" & FileVersion & "_" & Application.UserName & ".xls"
End Property




Leider erstellt Excel immer wieder eine resume.xlw-Datei (dachte eigentlich, das wäre mit Application.DisplayAlerts=False ausgeschaltet), wäre ja grundsätzlich egal, aber da der Nutzer gefragt wird, ob er die vorhandene ersetzen will, ziemlich lästig...

Kann mir jemand helfen?

Danke schonmal,
Brigitte

Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
27.11.2009 09:09:59 Brigitte
NotSolved
Blau Aw:resume.xlw vermeiden
30.11.2009 12:56:19 Holger
NotSolved