Bonjour à tous
Je récupère un texte multilignes que je souhaite importer dans une table avec 2 colonnes: Produit; Dose
Voici un exemple de texte:
La première ligne contient le produit puis la 2ième la dose, la 3ième un nouveau produit et 4ième sa dose, etc...Ce texte est toujours formaté comme cela.1000 ml POLYIONIQUE G5
PRF de 1000 mL sur 24h00 à 09h pendant 4 jour(s)
CALCIPARINE SC 12 500 iu/0.5 mL, sol inj, amp
1,2 mL / jour pendant 30 jour(s), 0,4 mL à 04h, 0,4 mL à 12h, 0,4 mL à 20h
DOLIPRANE (PARACETAMOL) 1*000 MG, CPR
4 cpr / jour pendant 7 jour(s), 1 cpr à 08h, 1 cpr à 12h, 1 cpr à 18h, 1 cpr à 22h
INEXIUM 40 mg, cpr gastro-résistant
1 cpr / jour pendant 7 jour(s), 1 cpr à 20h
KARDEGIC 160 mg, pdr pr sol buv, sachet
1 sachet / jour pendant 10 jour(s), 1 sachet à 12h
PROFENID (KETOPROFENE) 50 MG, GÉLULE
4 gel / jour pendant 3 jour(s), 1 gel à 08h, 1 gel à 12h, 1 gel à 18h, 1 gel à 22h
Le texte ci-dessus dois donc donner:
Remarquez que la dose coupe à ", " au début et " à" à la fin.ProduitDose1000 ml POLYIONIQUE G5 [INDENT]PRF de 1000 mL sur 24h00 à 09h pendant 4 jour(s)
CALCIPARINE SC 12 500 iu/0.5 mL, sol inj, amp0,4 mL, 0,4 mL, 0,4 mL
DOLIPRANE (PARACETAMOL) 1*000 MG, CPR1 cpr, 1 cpr, 1 cpr, 1 cpr
INEXIUM 40 mg, cpr gastro-résistant1 cprKARDEGIC 160 mg, pdr pr sol buv, sachet1 sachetPROFENID (KETOPROFENE) 50 MG, GÉLULE1 gel , 1 gel , 1 gel , 1 gel
Ce Code isole le produit et j'imagine bien insérer dans la table Txt1 dans la colonne "Produit". Si je démarre le for à 1, j'isole la dose. Mais comment découper cette boucle avec le critère ", " au début et " à" à la fin ? J'ai essayé toutes les combinaisons mais je n'y arrive pas.
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 Function ctrlC_coller() Dim TabAs() As String Dim TabSql() As String Dim Txt1 As String Dim Txt2 As String Dim strcopie As String 'Gestion des erreurs On Error Resume Next 'Récupère le presse papier strcopie = Clipboard2Text() 'Extraction selon le saut de ligne TabAs = Split(strcopie, vbCrLf) Dim i As Long For i = 0 To UBound(TabAs) Step 2 'Parcours du tableau Txt1 = Mid(TabAs(i), 1) Txt2 = Txt2 & Txt1 Next i Debug.Print Txt2 End Function
Je vous serai reconnaissant si vous pouviez m'indiquer une stratégie pour y arriver.
Partager