Amélioration de mon code, svp!!

Lynk Zel

XLDnaute Junior
Bonjour à toutes et à tous.


Voilà, j'ai le code suivant :

Sub Test()
Dim DialOuvr As FileDialog, Rep, Chemin As String
Set DialOuvr = Application.FileDialog(msoFileDialogOpen)
DialOuvr.Filters.Clear
DialOuvr.Filters.Add "Fichiers CSV", "*.csv", 1
DialOuvr.AllowMultiSelect = False
DialOuvr.Title = "Ouverture du fichier CSV"
DialOuvr.InitialView = msoFileDialogViewList
'DialOuvr.InitialFileName = "C:\Mes Fichiers CSV\"
Rep = DialOuvr.Show
If Rep = 0 Then
MsgBox "Opération annulée"
Exit Sub
End If
Chemin = DialOuvr.SelectedItems(1)
'-----------------------
With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & Chemin, Destination:=Range("A3"))
.Name = "test"
.AdjustColumnWidth = False
.TextFileParseType = xlDelimited
.TextFileCommaDelimiter = True
.Refresh BackgroundQuery:=False
End With
'------------------------
ActiveSheet.Rows("1:34").Delete Shift:=xlUp
ActiveSheet.Columns("H:M").Clear
End Sub


le problème, c'est que ce code ne me mets pas mon tableau à la bonne place, voir le fichier ci-joint pour le positionnement.

Si quelqu'un peut m'aider.

merci
@+
 

Lynk Zel

XLDnaute Junior
Re : Amélioration de mon code, svp!!

bonjour Catrice, je viens de voir tes solutions. Elles sont géniales, l'importation marche bien et le systèmes des "O" aussi.
j'ai fait des test sur "test1" et ça marche du tonnerre.

je t'ai mis un fichier .doc "à lire" dans le dossier, il y a normalement toutes les explication concernant les relations entre la colonne "description" de mon "fichier importé" et mon "tableau de donnée".

si quelque chose coince, fait le moi savoir ;)

merci pour ton aide.
@+
 

Pièces jointes

  • essai3.zip
    35.4 KB · Affichages: 34
  • essai3.zip
    35.4 KB · Affichages: 36
  • essai3.zip
    35.4 KB · Affichages: 34
Dernière édition:

Catrice

XLDnaute Barbatruc
Re : Amélioration de mon code, svp!!

Bonjour,

J'ai compris ce que tu veux faire mais ça 'a pas l'air évident.
En effet, pour TUYAUTERIE AV CATA (WIMETAL) tu veux faire correspondre : Tuyauterie CATA en ligne 80 mais comment deviner qu'il faut chercher TUYAUTERIE et CATA dans la table ?

Sachant qu'en dessous, il y a TUYAUTERIE INTM (WIMETAL) où là il ne faut chercher que TUYAUTERIE ?

En plus j'ai vu que CATA existe tout seul en ligne 78 .?!...

Pour ceux avec les tirets ça devrait etre plus facile.
Je vais regarder ça ...
 

Lynk Zel

XLDnaute Junior
Re : Amélioration de mon code, svp!!

re

j'espère que tu ne galère pas trop :eek:

En ce qui concerne la 2ème partie (aucun séparateur), le fait d'avoir TUYAUTERIE AV CATA, ca veux dire qu'il faut regarder à la ligne TUYAUTERIE CATA puisque TUYAUTERIE & CATA sont dans la même cellule.

Dans le cas où CATA est tout seul sur la ligne dans mon "fichier importé" avec sa description (c'est-à-dire sans TUYAUTERIE), il devra prendre les données à la ligne CATA.
Idem pour la TUYAUTERIE INTM, il n'y a que TUYAUTERIE donc les donnée doivent pointées vers la ligne TUYAUTERIE de mon "tableau de donnée".

dans tous les cas, si dans mon fichier importé il y a TUYAUTERIE & CATA dans la même cellule (quelques soit leur emplacement dans cette cellule) les données porteront sur la ligne TUYAUTERIE CATA.
Pareil si on rajoute TUYAUTERIE & CATA & FAP, par exemple. Si ces 3 mots sont dans la même cellule alors la ligne correspondante dans mon "tableau de donnée" sera TUYAUTERIE CATA-FAP (ligne 79 de mon "tableau de donnée").

merci
@+
 

Catrice

XLDnaute Barbatruc
Re : Amélioration de mon code, svp!!

Hello,

J'ai commencé à regarder.
Pour les "-" je ne pense pas qu'il y ait de pb.
Ca ne va pas etre simple pour l'histoire des AV.
Je ne vois pas comment adresser tous les cas de figure (y compris ce que je n'ai pas encore vu) ...
Je vais essayer de te proposer qq chose ce soir.
OK ?
 

Lynk Zel

XLDnaute Junior
Re : Amélioration de mon code, svp!!

ça marche, merci.

si vraiment il y a difficulté, on fera autrement (je rentrerai les cas, à la main dans le "tableau de donnée", qui ne rentre pas la solution. Mais bon ça risque d'être très long).

bon ben encore une fois merci
@+
 

Catrice

XLDnaute Barbatruc
Re : Amélioration de mon code, svp!!

Bonsoir,

Ci-joint un fichier à tester.
Normalement, avec les "-" tu devrais avoir les resultats escomptés.
Pour le reste ca n'en gere qu'une partie.
Il va falloir faire des correspondances ...
Par exemple il faut faire une recherche speciale pour 1/2 Coquille ...
 

Pièces jointes

  • Classeur2.zip
    20.5 KB · Affichages: 35
  • Classeur2.zip
    20.5 KB · Affichages: 40
  • Classeur2.zip
    20.5 KB · Affichages: 35

Lynk Zel

XLDnaute Junior
Re : Amélioration de mon code, svp!!

re tout le monde,

ton fichier marche très très bien (importation et séparateur "-").

juste pour info comment faire si j'ai un fichier importé qui fait environ une centaine de ligne (le programme est bloqué à 43 lignes je crois)
en ce qui concerne ton dernier message, j'ai pas bien compris la correspondance et la recherce spéciale.


en tout cas merci pour ce que tu m'as envoyé, c'est génial.
@+
 

Catrice

XLDnaute Barbatruc
Re : Amélioration de mon code, svp!!

Hello,

Le "nettoyage" (macro recommencer) est limité à 43 lignes mais la macro, elle, copie le bloc contigu de données trouvé dans le CSV.
Dans la macro, tu peux changer 43 en 100 ou +.
Il faut egalement enlever les cellules fusionnées sous le tableau.
 

Lynk Zel

XLDnaute Junior
Re : Amélioration de mon code, svp!!

Bonjour catrice, le forum.

Je viens de tester la méthode. Elle marche pour l'importation mais pas pour la mise en forme du tableau (voir document ci-joint avec le classeur et le fichier .csv de 74 lignes).
 

Pièces jointes

  • essai4.zip
    25.2 KB · Affichages: 37
  • essai4.zip
    25.2 KB · Affichages: 33
  • essai4.zip
    25.2 KB · Affichages: 31

Catrice

XLDnaute Barbatruc
Re : Amélioration de mon code, svp!!

Hello,

Effectivement, la macro effectue l'importation mais n'assure pas le formatage.
Ci-joint, une macro qui importe et formate à adapter ...
 

Pièces jointes

  • essai5.zip
    20.1 KB · Affichages: 32
  • essai5.zip
    20.1 KB · Affichages: 33
  • essai5.zip
    20.1 KB · Affichages: 33

Lynk Zel

XLDnaute Junior
Re : Amélioration de mon code, svp!!

:) bonjour Catrice, le forum,

Le petit classeur commence à prendre forme, le seul petit hic:(, c'est que je n'arrive pas à rentrer manuellement les descriptions qui son NA dans la colonne "résultat" (voir ligne en jaune dans les 2 feuilles).

Autre petit détail (juste pour savoir si c'est possible de le faire), peut-on rajouter le nombre de référence sous la colonne description?

merci
@+
 

Pièces jointes

  • essai6.zip
    28.7 KB · Affichages: 30

Catrice

XLDnaute Barbatruc
Re : Amélioration de mon code, svp!!

Bonjour,

Pour ce qui concerne la recherche de code, jusqu'à présent, on faisait un recherche d'un morceau de code qu'on "repèrait" dans le fichier "Fichier Importé" et on le comparait à un code abrégé de l'onglet "Tableau de donnée".
La formule récupère "NAPPE" et recherche "NAPPE" tout seul.
Dans ce nouveau cas de figure, on cherche l'intégralité du code...
Il faut soit modifier le code dans "Tableau de donnée" et mettre "NAPPE" au lieu de "NAPPE MAINTIEN 480X235 1200G".
Ou bien modifier la formule comme dans le fichier joint.

Le NBVAL est rajouté.
 

Pièces jointes

  • essai7.zip
    20.1 KB · Affichages: 34
  • essai7.zip
    20.1 KB · Affichages: 34
  • essai7.zip
    20.1 KB · Affichages: 34

Lynk Zel

XLDnaute Junior
Re : Amélioration de mon code, svp!!

re,

ça n'a pas durée longtemps :eek: mais c'est assez simple.
j'aimerai faire correspondre la colonne C "type" de ma 1ère feuille avec la colonne de C "type french" de ma 2ème feuille.
Là, les cellules de ma 1ère feuille en colonne C sont les mêmes que dans la colonne C de ma 2ème feuille (donc plus de souci de séparateur). il s'agit juste de faire la correspondance avec mon tableau de donnée.

merci
@+
 

Pièces jointes

  • essai8.zip
    25.3 KB · Affichages: 31
  • essai8.zip
    25.3 KB · Affichages: 36
  • essai8.zip
    25.3 KB · Affichages: 35

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 196
Messages
2 086 101
Membres
103 116
dernier inscrit
kutobi87