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 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110
| Sub ouvrirDocWordExistant()
Dim ipos, ipos1, ipos2, ipos3, ipos4, ipos5, ipos6, ipos7 As Integer
Dim PositionCom As Integer
Dim Contenu, chaine, chaine1, marque, modele As String
Dim nom As String
Dim ncommande, dateach As String
Dim ndossier As String
Dim nimei As String
Dim imei As String
Dim achat As Date
Dim codepos As String
Contenu = Range("A10").Value
nimei = Range("A18").Value
marmo = Range("A19").Value
dateach = Range("A21").Value
codepos = Range("A3").Value
adresse = Range("A2").Value
'recup nom client
ipos = InStr(1, Contenu, "Commande") + 17
chaine = Mid(Contenu, ipos)
ipos1 = InStr(1, chaine, "06")
nom = Left(chaine, ipos1 - 1)
Range("A32").Value = nom
'recup n° dossier
ipos2 = InStr(1, Contenu, "06")
ndossier = Mid(Contenu, ipos2, 10)
Range("A33").Value = "'" & ndossier
'recup IMEI
ipos4 = InStr(1, nimei, ":")
imei = Mid(nimei, ipos4 + 2, 15)
Range("A34").Value = imei
'recup n°commande
PositionCom = InStr(Contenu, "Commande")
ncommande = Left(Contenu, 8)
Range("A31").Value = ncommande
'recup marque modèle
ipos3 = InStr(1, marmo, "couleur :")
chaine1 = Mid(marmo, ipos3 + 10)
ipos5 = InStr(chaine1, ",")
marque = Left(chaine1, ipos5 - 1)
longueur = Len(marque) + 1
modele = Mid(chaine1, longueur + 2)
Range("A35").Value = marque
Range("A36").Value = modele
'recup dates
ipos6 = InStr(1, dateach, "achat")
achat = Mid(dateach, ipos6 + 8, 10)
Range("A37").Value = achat
ipos7 = InStr(1, dateach, "échange")
echange = Mid(dateach, ipos7 + 10, 10)
If echange = "Date de fi" Then
Range("A37").Value = "pas d'échange"
Else
Range("A37").Value = echange
End If
'recup code postal ville
Code = Left(codepos, 5)
ville = Mid(codepos, 7)
Range("A38").Value = Code
Range("A39").Value = ville
Range("A40").Value = adresse
'necesite d'activer la reference Microsoft Word xx.x Object Library
Dim appWrd As Word.Application
Dim signet As FormField
Dim DocWord As Word.Document
Set appWrd = CreateObject("Word.Application")
appWrd.Visible = True
Set DocWord = appWrd.Documents. _
Open("U:\SAV\ANOVO 'accessoires Voiron.doc", ReadOnly:=False)
DoEvents
'remplissage
For Each signet In ActiveDocument.FormFields
champ = signet.Name
Select Case champ
Case "livraison"
signet.CheckBox.Value = 1
Case "client"
signet.Result = Range("A32").Value
Case "numero"
signet.Result = Range("A33").Value
Case "dappel"
signet.Result = Range("A30").Value
Case "echange"
signet.CheckBox.Value = 1
Case "batterie"
signet.CheckBox.Value = 1
Case "imei"
signet.Result = Range("A34").Value
Case "marque"
signet.Result = Range("A35").Value
End Select
Next signet
'DocWord.Close wdDoNotSaveChanges
appWrd.Quit wdDoNotSaveChanges
Set Worddoc = Nothing
Set wdApp = Nothing
End Sub |