Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Rencontres QGIS 2025

L'appel à participation est ouvert jusqu'au 19 janvier 2025!

#1 Thu 13 August 2009 15:27

slhomme
Participant actif
Date d'inscription: 5 May 2006
Messages: 88

Ecrire dans feuilles excell

Bonjour,

Je cherche à transférer des données mapinfo sur différentes feuilles d'un même  fichier excel qu eje pourrai ensuite ouvrir depuis Mapinfo.

Pour le moment j'exporte une table mapinfo en txt et je l'ouvre depuis Mapinfo avec ce code

Code:

    
' pour exporter la table

[u]Export "ma_table1" Into    chemin_export +  "ma-table1.txt" Type "ASCII" Titles CharSet "WindowsLatin1" Overwrite 

' pour ouvrir le fichier excel
Run Program "C:\Program Files\Microsoft Office\Office12\EXCEL.exe   C:\mon_chemi\ma-table1.txt"[/u]

ca fonctionne mais ca m'oblige à créer trois fichiers excel différents. Quelqu'un as t'il une idée pour exporter chacune des tables dans une feuille du même fichier excel ?

Merci d'avance de votre aide

Stéphane

ps : je travaille avec Mapinfo 9.5 et mapbasic 8.0

Hors ligne

 

#2 Thu 13 August 2009 15:56

Olivier T
Participant actif
Date d'inscription: 31 May 2006
Messages: 71

Re: Ecrire dans feuilles excell

Bonjour

Je ne comprend pas l'interet de passer de mapinfo à excel pour stocker de l'information .

De plus la définition de la table de sera pas très simple, à chaque feuille, sa définition pour une seul nom de fichier

Hors ligne

 

#3 Thu 13 August 2009 16:09

slhomme
Participant actif
Date d'inscription: 5 May 2006
Messages: 88

Re: Ecrire dans feuilles excell

Bonjour

merci de votre réponse

L'intèrêt c'est de faire des calculs. excel est plus performants que mapinfo pour cela, surtout si ces tables sont destinées à des utilisateurs  sachant manipuler excel et pas mapinfo....

X

De plus la définition de la table de sera pas très simple, à chaque feuille, sa définition pour une seul nom de fichier


Savez vous comment faire ?

Hors ligne

 

#4 Thu 13 August 2009 16:43

Marc-André
Participant assidu
Lieu: Montréal
Date d'inscription: 30 Sep 2005
Messages: 688

Re: Ecrire dans feuilles excell

Bonjour,

Vous pouvez sélectionner ce que vous désirez dans MapInfo, puis faire un copier-coller de MapInfo vers Excel. Puisque vous pouvez coller où vous voulez, vous pouvez le faire sur des feuilles différentes.

Hors ligne

 

#5 Thu 13 August 2009 16:45

Damien BEAUSEIGNEUR
Participant assidu
Lieu: meyzieu
Date d'inscription: 5 Sep 2005
Messages: 425

Re: Ecrire dans feuilles excell

Bonjour,

En fait il y a 2 solutions, la première réécrire complètement la partie d'export pour tout intégrer dans un seul fichier texte le tout dans une seule feuille du même classeur...

la deuxième nécessite de connaitre le vba Excel de créer un fichier Excel qui va contenir la macro qui va concatener les 3 fichiers exportés (dans la macro qui s'exécute à l'ouverture du classeur) ...

C'est la méthode en gros...

Hors ligne

 

#6 Thu 13 August 2009 17:29

slhomme
Participant actif
Date d'inscription: 5 May 2006
Messages: 88

Re: Ecrire dans feuilles excell

Merci A tous,

Marc André : si je programme en mabbasic c'est que les opérations peuvent être trés nombreuses donc le CC ne marche pas dans ce cas.

DAMIEN

En fait il y a 2 solutions, la première réécrire complètement la partie d'export pour tout intégrer dans un seul fichier texte le tout dans une seule feuille du même classeur...


Cela signifie t'il qu'il est impossible d'exporter différentes tables mapinfo dans différentes feuilles du même fichier excel ?


Sinon la seconde solution me paraît réalisable mais il faut que je me colle au vba...des idées du code de concaténation ?


Merci en tous cas de vos réponses

Stéphane

Hors ligne

 

#7 Thu 13 August 2009 21:40

Marc-André
Participant assidu
Lieu: Montréal
Date d'inscription: 30 Sep 2005
Messages: 688

Re: Ecrire dans feuilles excell

Bonjour,

En effet, je ne prévoyais pas l'emploi du MapBasic pour la solution du copier-coller.

Hors ligne

 

#8 Thu 13 August 2009 22:37

Damien BEAUSEIGNEUR
Participant assidu
Lieu: meyzieu
Date d'inscription: 5 Sep 2005
Messages: 425

Re: Ecrire dans feuilles excell

effectivement, vu la problématique la solution d'un seul fichier ne marche pas, à moins d'utiliser du VBA après pour répartir de nouveau les informations sur d'autres feuilles... (j'ai lu un peu rapidement la première foi il est vrai ...)

Puisque le choix du VBA est inévitable il vaut mieux tout exporter et ensuite tout importer dans une macro autoexecutable, à l'ouverture d'un classeur vide mais contenant juste la macro de démarrage, pour écrire cette macro, il faut enregistrer la macro en le faisant manuellement wink et ensuite de nettoyer le code..., car il peu être un peu lourd...

Enfin c'est comme ça que je procède c'est plus rapide... avec éventuellement une adaptation manuelle dans le cas de création de mise en page par exemple avec un nombre de ligne variable...

pour le reste écrire ce genre de code peu prendre un peu de temps quand même ...

Hors ligne

 

#9 Fri 14 August 2009 11:24

slhomme
Participant actif
Date d'inscription: 5 May 2006
Messages: 88

Re: Ecrire dans feuilles excell

Merci Damien,

Je vais donc opérer ce cette facon, pour le code vba je dervais me débrouiller avec un peu de temps. Il me reste cependant une question. Une fois les trois fichiers créés par mapbasic je voudaris que ma macro excel se lance aussi depuis mapbasic. Un code particulier pour cela ou je lance "normlement " (cf le code de mon premier message) le fichier excel qui contient la macro ?

Stéphane

Hors ligne

 

#10 Fri 14 August 2009 12:05

Damien BEAUSEIGNEUR
Participant assidu
Lieu: meyzieu
Date d'inscription: 5 Sep 2005
Messages: 425

Re: Ecrire dans feuilles excell

Il existe des macros spéciales qui s'exécute dès l'ouverture du classeur, c'est la même méthode que celle permettant l'ouverture d'un fichier Excel nom de la macro auto_open sur le classeur que tu va ouvrir et qui va te servir à créer le classeur contenant tes 3 tables...
Si il faut passer par lien DDE, mais je trouve ça assez long...

Hors ligne

 

#11 Fri 14 August 2009 13:35

slhomme
Participant actif
Date d'inscription: 5 May 2006
Messages: 88

Re: Ecrire dans feuilles excell

Ok je vais voire ce que ca donne

merci à tous de votre aide.

Stéphane

Hors ligne

 

#12 Tue 18 August 2009 13:36

Olivier T
Participant actif
Date d'inscription: 31 May 2006
Messages: 71

Re: Ecrire dans feuilles excell

Bonjour

Il y a moyen de lancer depuis MI une macro Excel.

Pour cela, il faut rendre la macro Excel autoexcécutable à l'ouverture du fichier, Workbook autoopen

puis dans le wor de MI lancer l'ouverture du fichier Excel avec une insturuction, call sheel appli excel mon fichier

En gros c'est comme cela que l'on doit faire, pour plus de détail , prévoir un p'tit délai !!

bonne journée et bon courage à tous !!!

Dernière modification par Olivier T (Tue 18 August 2009 13:37)

Hors ligne

 

#13 Wed 19 August 2009 11:12

philmap
Participant actif
Date d'inscription: 27 Nov 2006
Messages: 59

Re: Ecrire dans feuilles excell

Bonjour,

Je fais ce genre de choses en Visual basic en declarant un objet MapInfo et un objet Excel, je commande les 2 applications.

Hors ligne

 

Pied de page des forums

Powered by FluxBB