Salut à tous les genies !
En fait , je veux convertir ce fichier word en une base de données , le fichier word n'est pas organisé à 100% mais la BDD ne va contenir pas toutes les infos !
Voilà le sample vous expliquera tout
Merci d'avance !
Salut à tous les genies !
En fait , je veux convertir ce fichier word en une base de données , le fichier word n'est pas organisé à 100% mais la BDD ne va contenir pas toutes les infos !
Voilà le sample vous expliquera tout
Merci d'avance !
il y a sous word un outil qui fait les bases de données (la grille ) celle ci organisera les données saisie
par contre si tu balance en vrac un tas de bouquin dans ta chambre il n'y a pas d'aspirateur qui les rangeront sur les étagères par genre et par auteur
il va falloir que tu retrousse tes manches pour ranger tout ça a la mains
prépare ta base avant coupe ce qui doit l'être garde que les champs qui servent
tu peut supprimer les titres inutiles et séparer chaque champ par un point virgule
là la conversion du texte en tableau et du tableau en texte peut t'aider à passer des paragraphe aux cellule et des cellules aux point-virgules par contre n'oublie pas de champ si un champ et vide il faut bien un paragraphe vide au départ
champ1;champ2;champ3
champ1;champ2;champ3;
champ1;;champ3
un truc dans ce genre
Cordialement
Daranc
Hello,
c'est faisable en VBA, mais c'est un développement spécifique ... si tu as un gros volume de données ça va valoir le coup ...
Oui en fait , le volume est enorme
Cafeine , tu peux donner un coup de main ?
Merci !
d'abord j'enregistre ton fichier word en fichier Texte ....
=> C:\Temp\dvp.txt
ensuite je lance cette macro ...
convertir "C:\Temp\dvp.txt"
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
54
55
56
57 Sub convertir(ByVal strFile As String) Dim fic As Integer Dim tmp As String Dim Count As Long, i As Long, j As Long Dim Records() As Variant Dim CurrField As Integer fic = FreeFile() Open strFile For Input As #fic Do While Not EOF(fic) Line Input #fic, tmp Select Case Left(tmp, 10) Case "SIRET" Count = Count + 1 ReDim Preserve Records(7, Count) CurrField = 1 Case "Activité e" CurrField = 2 Case "Raison soc" CurrField = 3 Case "Responsabl" CurrField = 4 Case "Voie " CurrField = 5 Case "Ville" CurrField = 6 Case "Téléphone " CurrField = 7 Case "xxxxxxxxxx" 'fin de l'enregistrement Case Else If CurrField <> 0 Then Records(CurrField, Count) = tmp CurrField = 0 End If End Select Loop Close #fic ActiveWorkbook.Worksheets("Feuil2").Range("A2").Select For i = LBound(Records, 2) To UBound(Records, 2) For j = 1 To 7 ActiveCell.Offset(i - 1, j - 1) = Records(j, i) Next j Next i End Sub
Merci beaucoup Cafeine , je suis désolé car je suis sûr que je t'ai pris pas mal de votre temps
En fait , pour le moment je ne connais que Turbo Pascal celui le plus ancien
Je voulais juste savoir où je dois copier ce code source !
Merci bien![]()
il faut le mettre dans un module de code ... et lancer la macro via la fenêtre d'exécution (Ctrl + G dans le mode VBE).
Ben ce que j'ai pu faire c'est juste la creation d'une macro et puis j'ai appuiyé exécuter dans Excel , mais elle m'ai affiché une erreur 9 dans l'éxécution![]()
Non il faut lui préciser l'argument de l'emplacement du fichier texte à convertir, c'est pourquoi je te dis de le lancer dans la fenetre exécution (Ctrl + G)
Est-ce que tu as suivi les étapes ?
- enregistrer ton fichier word en fichier texte
- lancer la macro avec le nom de fichier texte comme argument ?
Envoyé par Kiefer_Sutherland
OK , maintenant apres quelques modifications avec Pascal , j'ai pu avoir cette structure ! (Structure1) un fichier csv.
Alors maintenant , je vous demande de montrer si c'est possible de programmer un code qui permet de ranger ces informations , c'est à dire se deplacer à la case suivante en rencontrant la , virgule.
Merci !
ravi d'avoir pu t'aider ... mais je ne m'appelle pas Pascal ...
blague à part, Menu > Données > Convertir ...
laisse toi guider ...
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager