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 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88
| Function ExistenceFichier(sFichier As String) As Boolean
ExistenceFichier = Dir(sFichier) <> ""
End Function
Sub enregistrement(adresseclasseuraccueil As String, adressefichier As String, nomfichier As String)
Dim nomfeuille As String
Dim i As Integer
Dim nombredeligneINTER As Long
nombredeligneINTER = Sheets(1).Range("A1").End(xlDown).Row
'insere une colonne avant la colonne O codvoi pour le traitement des fichiers textes
'elle sera supprimé à la fin de l'execution des macros
Workbooks(nomfichier).Sheets(1).Activate
Columns("O:O").Select
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Sheets(1).Range("O2:O" & nombredeligneINTER).FormulaR1C1 = "=WEEKNUM(RC[-10],2)"
For i = 1 To 5
nomfeuille = Sheets(i).Name
Sheets(i).Activate
ChDir adresseclasseuraccueil
ActiveWorkbook.SaveAs Filename:=nomfeuille & ".txt", _
FileFormat:=xlText, CreateBackup:=False
Next i
Columns("O:O").Delete Shift:=xlToLeft
ActiveWorkbook.SaveAs Filename:=adressefichier, _
FileFormat:=xlExcel8, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=False
End Sub
Sub test()
Call miseenplacedelafeuille
Call calculdesdureeope1
Call calculdureesallereveil
Call ajoutnomanesthesiste
Call ajoutnomoperateur
Call pilotededonneejour
Call pilotededonneejourcodesalle
Call pilotededonneesemaine
Call pilotededonneesemainecodesalle
Call pilotededonneeperiodecodesalle
Call pilotededonneeperiode
End Sub
Sub main()
Dim adressefichier As String
Dim adresseclasseuraccueil As String
Dim nomfichier As String
Dim nomfeuille As String
Dim i As Integer
Dim classeur As Workbook
adressefichier = Application.InputBox("Quel est l'adresse du fichier que vous voulez traiter: ", "", "D:\Users\Nakamura\Desktop\CHGE.xls")
If ExistenceFichier(adressefichier) Then
adresseclasseuraccueil = ActiveWorkbook.Path
nomfichier = Mid(adressefichier, InStrRev(adressefichier, "\") + 1)
Set classeur = Application.Workbooks.Open(adressefichier)
classeur.Activate
Application.Run "main.xls!'enregistrement'", adresseclasseuraccueil, adressefichier, nomfichier
Shell (adresseclasseuraccueil & "\main.exe")
Application.Run "main.xls!'test'"
Application.Wait (Now + TimeValue("0:00:4"))
Workbooks.OpenText Filename:= _
adresseclasseuraccueil & "\resultat.txt", Origin:=xlWindows, _
StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, _
ConsecutiveDelimiter:=False, Tab:=True, Semicolon:=False, Comma:=False _
, Space:=False, Other:=True, OtherChar:=";", FieldInfo:=Array(1, 1), _
TrailingMinusNumbers:=True
'Kill adresseclasseuraccueil & "\resultat.txt"
Else
MsgBox "fichier inexistant"
End If
End Sub |
Partager