Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1052to1056
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

nicht den ganzen Path in Inputbox zeigen

nicht den ganzen Path in Inputbox zeigen
28.02.2009 22:50:23
Rizzi
Hallo
Hätte da vieleicht eine blöde Frage
In der Inputbox wird , ThisWorkbook.Path& "\" vollständig eingesetzt.
Das Problem ist eher ein visueller Fehler. Falls die Datei in mehreren Unterordner befinden ist thisWorkbook.Path ellen lang. und in der Inputbox das ende nur noch mit reinklicken und Rechtspfeil zu erreichen. Gibt es eine Möglichkeit dies zu verbessern. Es muss unter ThisWorkbook.Path gespeichert werden aber nicht umbedingt in der Inputbox angezeigt werden.
strDat = InputBox("Dateiname: Dieser Dateiname darf nicht verwendet werden!! " & ThisWorkbook.name, "Speichern unter", ThisWorkbook.Path & "\")
Wäre cool wenn jemand eine coole Idee hätte.
Gruß
Rizzi

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: nicht den ganzen Path in Inputbox zeigen
28.02.2009 23:10:54
Josef
Hallo Rizzi,
zwei möglichkeiten.
Sub SaveFile1()
  Dim strDat As String
  
  strDat = Application.GetSaveAsFilename(InitialFileName:="Neu", _
    FileFilter:="Excel Dateien (*.xls; *.xlsx; *.xlsm; *.xlt; *.xltx; *.xltm)," & _
    "*.xls; *.xlsx; *.xlsm; *.xlt; *.xltx; *.xltm", _
    FilterIndex:=1, Title:="Dateiname")
  
  If strDat = "Falsch" Then Exit Sub
  
  '...
  
End Sub

Sub SaveFile2()
  Dim strDat As String, strPath As String
  
  strPath = ThisWorkbook.Path & "\"
  
  strDat = InputBox("Dateiname: Dieser Dateiname darf nicht verwendet werden!! " & ThisWorkbook.Name, _
    "Speichern unter", "Neu.xls")
  
  If strDat = "" Then Exit Sub
  
  strDat = strPath & strDat
  
End Sub

Gruß Sepp

Anzeige
AW: nicht den ganzen Path in Inputbox zeigen
28.02.2009 23:11:24
Oberschlumpf
Hi Rizzi
Versuch es mal so:

strDat = InputBox("Dateiname: Dieser Dateiname darf nicht verwendet werden!! " & ThisWorkbook. _
name, "Speichern unter")
If strDat  "" Then
If LCase(Right(strDat,4)) = ".xls" Then
ThisWorkbook.SaveAs ThisWorkbook.Path & "\" & strDat
Else
ThisWorkbook.SaveAs ThisWorkbook.Path & "\" & strDat & ".xls"
End If
End If


Aber Vorsicht!
Dieser Code enthält keine Kontrolle darüber, ob nur zulässige Zeichen für einen Dateinamen eingegeben wurden. Das heißt, enthält der eingegebene Dat.name z Bsp ein ? oder ein : usw, dann wird der Code mit Fehler unterbrochen.
Hilfs denn erst mal?
Ciao
Thorsten

Anzeige
AW: nicht den ganzen Path in Inputbox zeigen
01.03.2009 00:20:59
Rizzi
Hallo Sepp, hallo Thorsten
Alle drei Varianten sind einfach Klasse.
Kann mich fast nicht entscheiden, so gut sind sie.
Auf jeden Fall ist die unansehnliche befüllte Inputbox endlich leer.
Gruß
Rizzi
AW: nicht den ganzen Path in Inputbox zeigen
01.03.2009 09:23:26
Rizzi
Hallo
Habe leide noch ein programmierfehler. Wenn ich die datei mit dem alten Namen verwenden will (darf es eigentlich nicht) kommt die Meldung "Datei besteht schon bereits, wollen sie sie überschreiben"
Kann mann es ändern, daß der Name der alten Datei niemals verwendet werden darf und auch die Meldung nicht mehr kommt.

Private Sub CommandButton1_Click()
Dim DateiAlt As String
Dim strDat As String, strPath As String
strPath = ThisWorkbook.Path & "\"
DateiAlt = ActiveWorkbook.Name
strDat = InputBox("Dateiname: Dieser Dateiname darf nicht verwendet werden!!  " & ThisWorkbook. _
Name, "Speichern unter")
If (strDat = DateiAlt) Then
Exit Sub
End If
ActiveWorkbook.SaveAs strDat
End Sub


Gruß
Rizzi

Anzeige
AW: nicht den ganzen Path in Inputbox zeigen
01.03.2009 09:33:43
Josef
Hallo Rizzi,
Private Sub CommandButton1_Click()
  Dim DateiAlt As String, strDat As String, strPath As String
  
  strPath = ThisWorkbook.Path & "\"
  DateiAlt = ThisWorkbook.Name
  
  Do
    
    strDat = InputBox("Dateiname: Dieser Dateiname darf nicht verwendet werden!! " & _
      DateiAlt, "Speichern unter")
    
    If strPath & strDat = ThisWorkbook.FullName Then
      If MsgBox("Die Datei kann nicht unter dem gleichen Namen gespeichert werden!", _
        vbExclamation + vbRetryCancel, "Fehler") = vbCancel Then Exit Do
    Else
      ActiveWorkbook.SaveAs strPath & strDat
      Exit Do
    End If
    
  Loop
  
End Sub

Gruß Sepp

Anzeige
AW: nicht den ganzen Path in Inputbox zeigen
01.03.2009 09:47:52
Rizzi
Hallo Sepp
Danke für Deine Hilfe
Sofern ich denselben Namen verwende bsp. 8.xls kommt Deine Meldung. Wenn ich aber nur 8 eingebe ohne xls bringt er mir einen Fehler.
Gruß
Rizzi
AW: nicht den ganzen Path in Inputbox zeigen
01.03.2009 09:50:44
Josef
Hallo Rizzi,
Private Sub CommandButton1_Click()
  Dim DateiAlt As String, strDat As String, strPath As String
  
  strPath = ThisWorkbook.Path & "\"
  DateiAlt = ThisWorkbook.Name
  
  Do
    
    strDat = InputBox("Dateiname: Dieser Dateiname darf nicht verwendet werden!! " & _
      DateiAlt, "Speichern unter")
    
    If Right(strDat, 4) <> " .xls" Then strDat = strDat & ".xls"
    
    If strPath & strDat = ThisWorkbook.FullName Then
      If MsgBox("Die Datei kann nicht unter dem gleichen Namen gespeichert werden!", _
        vbExclamation + vbRetryCancel, "Fehler") = vbCancel Then Exit Do
    Else
      ActiveWorkbook.SaveAs strPath & strDat
      Exit Do
    End If
    
  Loop
  
End Sub


Gruß Sepp

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige