Bonjour à tous.
Tout d'abord tous mes vœux de bonne année et de bonne santé pour la nouvelle année qui commence
Je vous écris car je me retrouve face à une nouvelle difficulté dans ma pratique de VBA.
Un de mes utilisateurs utilise un fichier Excel depuis longtemps sous sa version 2003. Pendant les fêtes, son poste a été remplacé et il est maintenant équipé d'Office 2010 et voilà sa tête à son retour de congés
Ce fichier contient une formule qui d'après mes recherches n'est plus disponible dans les nouvelles moutures de la suite.
Les alternatives que j'ai trouvées me semblent bien complexe avec ajout de module à activer à chaque ouverture du fichier.
Le code d'origine est le suivant :
Si je comprends le code, il va chercher dans l'explorateur de fichier si un fichier du même nom existe pour nommer le fichier encours avec le numéro suivant.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25 Dim Rep As String Rep = "\\xxxxx\xxxxx " & Year(myDate) & "\" & Month(myDate) & "-12" ChDir Rep With Application.FileSearch .NewSearch .LookIn = Rep .FileType = msoFileTypeAllFiles .Execute End With With Application.FileSearch Dim a As String If .FoundFiles.Count = 0 Then a = "001" Else If .FoundFiles.Count < 10 Then a = "00" & .FoundFiles.Count + 1 Else a = "0" & .FoundFiles.Count + 1 End If End If End With Sheets("Feuil1").TextBox1.Text = a & "-" & Month(myDate) & "-" & Year(myDate)
Je sais pas si c'est clair désolé.
Si l'un d'entre-vous a une idée pour trouver une alternative fonctionnelle et non exhaustive je lui en serais infiniment reconnaissant.
Par avance merci.
Peut-être je peux faire quelque chose avec ça ? :
Mais je ne sais pas trop comment adapter et si VBS tel quel pourrait fonctionner en VBA ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Function ReportFileStatus(filespec) Dim fso, msg Set fso = CreateObject("Scripting.FileSystemObject") If (fso.FileExists(filespec)) Then msg = filespec & " exists." Else msg = filespec & " doesn't exist." End If ReportFileStatus = msg End Function
Merci encore pour ceux qui prendront le temps de me lire
Partager