Bonjour,
J'ai un problème qui est difficile à résoudre.
J'ai un fichier excel avec macros maintenant je le veux enregistrer sans macro .xlsx mais il me doit demander le nom du fichier et après le répertoire. Mais je reçoit un message d'erreur Où est la le problème?
Sub Speichern()
Dim strCopyName As String
Dim strPath As String
Dim strName As String
Dim Ret
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Dateiname = InputBox("Après l'enregistrement le fichier se trouve sur votre desktop !" & vbCrLf & vbCrLf & "Entrer le nom du fichier:", "ENREGISTREMENT SANS MACRO")
'If Dateiname = "" Then
strPath = ActiveWorkbook.Path
strName = ActiveWorkbook.Name
Ret = BrowseForFolder("C:\")
strCopyName = Ret & Dateiname
ActiveWorkbook.SaveAs strCopyName, FileFormat:=xlOpenXMLWorkbook
ActiveWorkbook.SaveAs strPath & "\" & strName, FileFormat:=xlOpenXMLWorkbookMacroEnabled
Application.DisplayAlerts = True
Application.ScreenUpdating = True
'End If
End Sub
Function BrowseForFolder(Optional OpenAt As Variant) As Variant
'Function purpose: To Browser for a user selected folder.
'If the "OpenAt" path is provided, open the browser at that directory
'NOTE: If invalid, it will open at the Desktop level
Dim ShellApp As Object
'Create a file browser window at the default folder
Set ShellApp = CreateObject("Shell.Application"). _
BrowseForFolder(0, "Please choose a folder", 0, OpenAt)
'Set the folder to that selected. (On error in case cancelled)
On Error Resume Next
BrowseForFolder = ShellApp.self.Path
On Error GoTo 0
'Destroy the Shell Application
Set ShellApp = Nothing
'Check for invalid or non-entries and send to the Invalid error
'handler if found
'Valid selections can begin L: (where L is a letter) or
'\\ (as in \\servername\sharename. All others are invalid
Select Case Mid(BrowseForFolder, 2, 1)
Case Is = ":"
If Left(BrowseForFolder, 1) = ":" Then GoTo Invalid
Case Is = "\"
If Not Left(BrowseForFolder, 1) = "\" Then GoTo Invalid
Case Else
GoTo Invalid
End Select
Exit Function
Invalid:
'If it was determined that the selection was invalid, set to False
BrowseForFolder = False
End Function