Stern (*) im Dateinamen

cesar

Stammgast
guten Tag zusammen

Ich habe folgendes Problem mit Excel 2010 VBA

Ich speichere eine Datei mit folgendem Code

ActiveWorkbook.SaveAs Filename:= _
"G:\XXXX\Personal\Meldungen2013\" & Sheets(1).Range("D8").Value & (Date) & ".xls", FileFormat:=xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
, CreateBackup:=False

Mit diesem VBA Code speichere ich eine Datei mit dem Namen, welcher im D8 angegeben ist und das ergibt zB. Huber Hans 20.12.12.xls. Soweit ist das ok und auch kein Problem

Nun greife ich in D8 über einen Sverweis auf eine Datenbank aus einem Download zu und dort hat es teilweise Namen, die im Namen einen Stern haben, zB Meier *Hans. Es besteht keine Möglichkeit, die Namen ohne Stern zu downloaden.
Da die gespeicherte Datei nun Meier *Hans 20.12.12.xls heissen würde, wird das aber nicht akzeptiert, da ein Speichern der Datei mit diesem Stern ja nicht möglich ist.
Obwohl ich schon lange suche, finde keinen VBA Code, der mir es ermöglichen würde, den Stern aus den Namen zu löschen.

Kann mir jemand weiterhelfen?
Schon jetzt herzlichen Dank
cesar
 

Xpert

Stammgast
Versuch es mal damit:

Code:
Sub Save()

Dim strName As String
Dim Suche As String
Dim Position As Long
Dim laenge As Integer

Suche = "*"

Position = InStr(Sheets(1).Range("D8").Value, Suche)
strName = Sheets(1).Range("D8").Value
laenge = Len(strName)

If Position > 0 Then
strName = Left(strName, Position - 1) & " " & Right(strName, laenge - Position - 1)
End If

ActiveWorkbook.SaveAs Filename:= _
"G:\XXXX\Personal\Meldungen2013\" & strName & (Date) & ".xls", FileFormat:=xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
, CreateBackup:=False
End Sub
 

cesar

Stammgast
Danke Xpert für die schnelle Antwort

Vermutlich habe ich das Problem doch nicht richtig geschildert.
Ich will den Stern nicht auf dem zu speichernden Formular löschen sondern in der abzufragenden Datenbank, da dort ca. 400 Namen gespeichert sind von denen einige diesen Stern zwischen Geschlechts- und Vornamen haben. Ich habe mal ein Beispiel angehängt.
Hier müssten in den Namen in Kolonne B die Sterne raus.
Über das Formular ist es zu schwierig, da ich es teilweise schreibgeschützt habe und bei den ersten Versuchen hat es überhaupt nicht geklappt.

cesar
 

Xpert

Stammgast
Danke Xpert für die schnelle Antwort

Vermutlich habe ich das Problem doch nicht richtig geschildert.
Ich will den Stern nicht auf dem zu speichernden Formular löschen sondern in der abzufragenden Datenbank, da dort ca. 400 Namen gespeichert sind von denen einige diesen Stern zwischen Geschlechts- und Vornamen haben. Ich habe mal ein Beispiel angehängt.
Hier müssten in den Namen in Kolonne B die Sterne raus.
Über das Formular ist es zu schwierig, da ich es teilweise schreibgeschützt habe und bei den ersten Versuchen hat es überhaupt nicht geklappt.

cesar

Wie heisst den das Worksheet? Wie wäre es ohne VBA, sondern mit einer Hilfspalte und Formeln?
 

Turakos

Stammgast
Hallo cesar

In der Office-Welt hat das Sternchen (*) die wichtige Verwendung als Operator für Rechenaufgaben und als Platzhalter. Ich verwende nach Möglichkeit keine Operatoren und Platzhalter in Datenfeld-(Zell)Inhalten.

Als Hinweis: In Excel kann das Sternchen (*) gesucht werden, in dem das Tilde-Zeichen (~) voran gestellt wird, also "~*" (ohne Anführungszeichen).

Möglicherweise ist es eine Lösung, wenn mit Suchen und Ersetzen das Sternchen (*) eliminiert wird.

Freundliche Grüsse
grippen
 

cesar

Stammgast
Hallo Grippen

Deine Vorgehensweise ist genau das, was ich suchte. Funktioniert einwandfrei.
Allen herzlichen Dank für die Hilfe

cesar
 
Oben