Bonjour à tous
Comment s'écrit en VBA :
Merci pour vos réponses
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2Si mon OS est 2000 alors... mais, si mon OS est Vista alors...
Bonjour à tous
Comment s'écrit en VBA :
Merci pour vos réponses
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2Si mon OS est 2000 alors... mais, si mon OS est Vista alors...
Salut,
essaie avec environ$
Regarde à http://excel.developpez.com/faq/inde...eEnvironnement
ça m'a l'air compliqué pour un gueu comme moi,
mais j'aurrais une autre solution qui serait à dire sans m'occuper du système d'exploitation
Si ce répertoire existe alors déroule moi cette procédure sinon déroule moi celle là
voila mon code qui ne veut pas marcher
c'est là le probléme ce n'est pas un répertoire commun à 2000 et Vista
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Sub saveripex_QuandClic() Dim test, fdmca, script As String 'mise à jour automatique de la date lors de l'enregistrement Range("S2").Value = Now() 'Bouton_191.Visible = False On Error Resume Next 'Windows NT ou Windows 2000 rep = "C:\TEMP\"
Suite:
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53 test = GetAttr(rep) Debug.Print test If Err <> 0 Then os = "2000" 'enregistrement de la FDM à envoyer par FTP are = Left(Worksheets(1).Range("L2"), 3) fdm = "C:\TEMP\" & Range("L2") & ".xls" ThisWorkbook.SaveAs (fdm) ' creation du script FTP et enregistrement provisoire script = "C:\Temp\script.ftp" Open script For Output As #1 Print #1, "prompt" Print #1, "...." Print #1, "...." Print #1, "...." Print #1, "cd FDM" Print #1, "put " & fdm Print #1, "quit" Close #1 Shell ("command.com /c ftp.exe -s:C:\Temp\script.ftp") End If On Error Resume Next 'Windows NT ou Windows 2000 rep = "C:\Users\Public\TEST\" test = GetAttr(rep) Debug.Print test If Err <> 0 Then os = "Vista" 'enregistrement de la FDM à envoyer par FTP are = Left(Worksheets(1).Range("L2"), 3) fdm = "C:\Users\Public\TEST\" & Range("L2") & ".xls" ThisWorkbook.SaveAs (fdm) ' creation du script FTP et enregistrement provisoire script = "C:\Users\Public\script.ftp" Open script For Output As #1 Print #1, "prompt" Print #1, "...." Print #1, "...." Print #1, "...." Print #1, "cd FDM" Print #1, "put " & fdm Print #1, "quit" Close #1 Shell ("command.com /c ftp.exe -s:C:\Users\Public\script.ftp") End If 'ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True ThisWorkbook.Saved = True Application.Quit End Sub
je reformule ma question:
Comment écrit-on en VBA?
Si le répertoire Q\TEMP\ existe alors déroule telle procédure
Sinon si c'est ce répertoire Q\Useres\Public\
alors déroule celle-ci
Bonjour,
remplace toto par ce que tu veux et les msgbox par tes actions :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 If Dir("c:\toto", vbDirectory) <> "" Then MsgBox "oui" Else MsgBox "non" End If
Je me simplifierais la vie en disant "si tu existes, c:\temp\, le répertoire est c:\temp\ mais si tu n'existes pas Mkdir "c:\temp"
Sans avoir à tester l'OS.
Maintenant, si tu dois tester l'OS, je ne vois pas ce qu'il y a de compliqué à mettre
pour connaître l'OS de vista, tu peux utiliser
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Select case Application.OperatingSystem Case "Windows (32-bit) NT 5.01" Code pour Windows Case "Vista.........." Code pour Vista Case Else Msgbox Application.OperatingSystem & " pas prévu !" End select
et là tu récupères la chaîne de caractères
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Msgbox Application.OperatingSystem 'ou Cells(1,1) = Application.OperatingSystem
Désolé mais n'ayant pas Vista, je ne peux pas le faire pour toi.
Maintenant, si jamais cette chaîne change dans le temps, ton appli passera par "pas prévu !" et là, t'es coincé. C'est pourquoi je préférerais utiliser la première méthode.
Tu crois que tu vas malgré tout pouvoir t'en sortir ?
Bonne journée.
J'ai commencé à tester avec
Cela à l'air en bonne voie
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 If Dir("c:\toto", vbDirectory) <> "" Then MsgBox "oui" Else MsgBox "non" End If
Merci à vous pour votre aide
Bonjour,
pour excel comparer la valeur de
pour les 2 systémes.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Application.OperatingSystem
Jacques.
Partager