Split en vba refusé

  • Initiateur de la discussion Initiateur de la discussion didier (2)
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

D

didier (2)

Guest
bonjour le forum

Je cherche a creer un repertoire sur mon disque a partir d'excel
j'ai la macro suivante

Public Function Create_Dir(S As String)
'Al Omari, mpep
'inclut la possibilité de créer un répertoire sur une machine distante
'(chemin de type "\\server1\dir1\dir2")
Dim V As Variant
Dim j As Integer
Dim sDir As String
Dim drv As String
Dim fs As Object
Const vblf2 = vbLf & vbLf


'// recherche caractére non valable S = Trim(S)
j = 0
j = j + InStr(1, S, "/")
j = j + InStr(3, S, ":") ' the ":" in C:\
j = j + InStr(1, S, "*")
j = j + InStr(1, S, "?")
j = j + InStr(1, S, ">")
j = j + InStr(1, S, "<")
j = j + InStr(1, S, "|")
j = j + InStr(1, S, """")
If j > 0 Then
MsgBox "Folder " & S & vbLf & "has invalid Characters / : * "" ? < > |"
Exit Function
End If

Set fs = CreateObject("Scripting.FileSystemObject")
With fs
If Left(S, 2) = "\\" Then drv = Mid(S, 1, InStr(3, S, "\")) _
Else drv = .GetDriveName(S) & Application.PathSeparator ' ie C:\
'// Break apart string s
If Left(S, 2) = "\\" Then S = Mid(S, InStr(3, S, "\"), Len(S))
V = Split(Trim(S), "\")
sDir = drv
For j = 1 To UBound(V)
sDir = .BuildPath(RTrim$(sDir), V(j))
If Not .FolderExists(sDir) Then .CreateFolder sDir
Next j
End With
Set fs = Nothing
End Function

Sub test()
S$ = "C:\coucou\Dir2\Dir3"
' MsgBox Dir_Make(S)
Create_Dir S
End Sub

Mais a la lecture de la macro excell bute sur split et me dit que la variable n'est pas déclaré
je suis avec la version 97 d'excell sous windows NT

Avec la même macro sous excell et windows Xp cela fonctionne.

une solution ou une autre macro sans split existe -t-elle svp ?

VBA quand tu nous tiens
Didier 2
 
Salut Didier

MkDir est ce qu'il y a de plus simple pour créer un répertoire...

Sub test()
MkDir "c:\mes documents\Matrix"
End Sub

tu fais tourner cette macrO et tu auras un répertoire Matrix
Tu tapes "MkDir" dans un module, tu sélectionnes ce mot, tu fais "F1"...
C'est valable pour tous les objets et toutes les instructions et méthodes...

Bon Samedi

PS je me doute bien que cette macro n'est pas de toi, je reconnais le style Frédérique Sigonneau/Laurent Longre là dedans... (D'ailleurs je pense que Laurent mettait en garde pour Split et XL97)
 
merci pour le tuyaux
j'ai pompé la macro sur un site anglais je crois
qui raconté comment faire des blagues (douce)avec excel a ses amis.
Il y avait une macro qui permettait d'ouvrir et de refermer le compartiment cd,, de creer sur tout le bureau des classeur xl vierge, de rendre un classeur
avec les fonctions inversés(on clic pour enregistré et en fait on imprime), etc

C'est domage je n'arrive plus a retrouver l'adresse de ce site
Si tu la connais merci de me la communiquer .
cordialement didier
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
Microsoft 365 Export données
Réponses
4
Affichages
482
Retour