Problème Access et Excel

Résolu/Fermé
gaudian Messages postés 62 Date d'inscription vendredi 22 juin 2007 Statut Membre Dernière intervention 12 septembre 2007 - 5 juil. 2007 à 14:12
khalido_ccm Messages postés 24 Date d'inscription vendredi 21 avril 2006 Statut Membre Dernière intervention 16 juillet 2007 - 16 juil. 2007 à 16:49
Bonjour,

Je vais vous expliquer mon problème. Je travaille sous VB 6.0 avec une base Access.

Mon objectif est à partir de ma base Access afficher les informations contenues dans cette base sur une feuille Excel tout marche sauf pour 3 colonnes.

Mes 3 dernières colonnes ont des champs de type "Mémo" sous Access, il affiche le contenu du champ sur plusieurs lignes, la première se met correctement dans ma colonne N et les autres valeurs du champ se mettent sous la colonne A, je les voudrais :
soit sur une seule ligne,
soit sur plusieurs lignes mais sur la même colonne (colonne N dans mon exemple)

Merci à vous
A voir également:

2 réponses

khalido_ccm Messages postés 24 Date d'inscription vendredi 21 avril 2006 Statut Membre Dernière intervention 16 juillet 2007
6 juil. 2007 à 15:33
Je te passe une idée qui m'a servi tellement :

Ouvre une nouvelle macro sous Excel, fait manuellement tout ce que tu vx.
Tape Alt + F11 pour voir l'éditeur VB, dans le dossier modules ouvre module1.
Tu trouvera une procédure de la macro créée.Et là tu as tout le code que peut t'aider énormément dans votre application VB, il suffit de le paramétrer un peu.

Bonne chance.
0
gaudian Messages postés 62 Date d'inscription vendredi 22 juin 2007 Statut Membre Dernière intervention 12 septembre 2007 3
6 juil. 2007 à 15:44
En fait, mon code marche et ma mise en page fonctionne, cela vient je pense de ma BDD car mes 3 dernières colonnes sont du type "Mémo".

Je prend un exemple j'ai une colonne qui s'intitule MATCONF, ce champ contient plusieurs lignes comme ci-dessous :

MatConf:
Commentaire 1
Commentaire 2
Commentaire 3

Si j'enleve le retour à la ligne (Commentaire1Commentaire2Commentaire3) cela fonctionne correctement, voici mon bout de code qui fonctionne sans le retour à la ligne.

Chaine = Chr(34) & Trim(Data1.Recordset.Fields("Famille")) & """;" & """" & Trim(Data1.Recordset.Fields("IdentArt")) & """;" & """" & Trim(Data1.Recordset.Fields(("MatConf")))



Si quelqu'un peut m'en dire plus
0
khalido_ccm Messages postés 24 Date d'inscription vendredi 21 avril 2006 Statut Membre Dernière intervention 16 juillet 2007
6 juil. 2007 à 16:14
Voilà approximativement ce que je fais moi :

'---------------------
Dim ApplExcel As Excel.Application
Dim WBExcel As Excel.Workbook
Dim WSExcelAs Excel.Worksheet

Set ApplExcel = New Excel.Application 'on crée une nouvelle app Excel
Set WBExcel = objXL.Workbooks.Add 'On lui ajoute un classeur
Set WSExcelAs = objWB.Worksheets(1) 'On sélectionne la feuille 1


for i=0 to rs1.recordcount
'-------On charge le s1ers chams ds la feuille Excel
WSExcelAs .Cells(i, 9) = rs2![Descripción]= Trim(Data1.Recordset.Fields(("MatConf"))) '9 =>colonne N
rs1.movenext
next
'--------------------
De cette façon je contrôle bien les cellules de ma feuille
0
gaudian Messages postés 62 Date d'inscription vendredi 22 juin 2007 Statut Membre Dernière intervention 12 septembre 2007 3
9 juil. 2007 à 09:09
Ca ne fonctionne pas
0
gaudian Messages postés 62 Date d'inscription vendredi 22 juin 2007 Statut Membre Dernière intervention 12 septembre 2007 3
11 juil. 2007 à 11:35
C'est j'ai trouvé une solution,

Le principe est le suivant j'effectue une boucle sur mon enregistrement et à chaque passage j'utilise la méthode Replace.

Voilà ça fonctionne c'est cool
0
khalido_ccm Messages postés 24 Date d'inscription vendredi 21 avril 2006 Statut Membre Dernière intervention 16 juillet 2007 > gaudian Messages postés 62 Date d'inscription vendredi 22 juin 2007 Statut Membre Dernière intervention 12 septembre 2007
16 juil. 2007 à 16:49
Félicitation
0