IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP Discussion :

comment executer une macro excel depuis page asp ?


Sujet :

ASP

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 9
    Points : 2
    Points
    2
    Par défaut comment executer une macro excel depuis page asp ?
    bonjour à tous,

    comment executer une macro excel depuis page asp ?

  2. #2
    Expert éminent
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Points : 9 506
    Points
    9 506
    Par défaut
    Salut,

    Bienvenu sur le forum.
    Il serait aimable de commencer et terminer tes discussions par les formules de politesse d'usage. Merci de corriger ton post. Il y a un petit bouton éditer à droite.

    Pour ta question, je ne sais pas. Ceci dit, une macro étant rédigée en code VB pourquoi ne pas la transcrire en vbscript? Que fait cette macro?

    A+

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 9
    Points : 2
    Points
    2
    Par défaut
    la macro transforme toutes les cellules du fichier excel en format TEXTE.
    à partir de excell --> macro ça marche la conversion fonctionne.


    maintenant comment je pourrais faire en sorte en ASP
    pour indiquer d'executer la macro sur le fichier excell
    (je veux indiquer d'executer la macro sur tel fichier excel mais je ne veux pas lire le fichier excel pour le convertir)

    merci

  4. #4
    Membre expérimenté
    Avatar de kaiser59
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 264
    Points : 1 350
    Points
    1 350
    Par défaut
    Citation Envoyé par auboulot909 Voir le message
    la macro transforme toutes les cellules du fichier excel en format TEXTE.
    à partir de excel --> macro ça marche la conversion fonctionne.


    maintenant comment je pourrais faire en sorte en ASP
    pour indiquer d'exécuter la macro sur le fichier excel
    (je veux indiquer d'executer la macro sur tel fichier excel mais je ne veux pas lire le fichier excel pour le convertir)

    merci
    Salut,

    Désolé mais la j'avoue que j'ai un peu de mal à te comprendre
    je veux indiquer d'executer la macro sur tel fichier excel mais je ne veux pas lire le fichier excel pour le convertir
    C'est pareil en Excel il me semble, si tu ne l'ouvre pas, la macro n'est pas exécuter nan ??

    De plus, pourquoi as tu besoin d'asp pour tes fichiers xls ?

    Si c'est dans l'exportation de ton fichier, une cellule lorsqu'elle contient du numérique pour la faire passer en texte sans passer par format il suffit de rajouter un ' devant le nombre p.e :
    la cellule A1 contient 10 (donc numérique)
    si tu fais ceci : '10 numérique devient texte ton nombre sera aligné à gauche.

    Cepdt, cela fonctionne sûr depuis xls, mais en passant par asp c'est bien du texte mais le ' apparait alors qu'il ne devrait pas

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 9
    Points : 2
    Points
    2
    Par défaut
    l'entreprise impose IIS et l'ASP

    les fichiers excell se trouvent sur le serveur IIS, hors si les cellules des fichiers excell ne sont pas en texte le programme ASP(aucune erreur) qui lit le fichier excell ne lit rien du tout(null).

    donc avant de lire le fichier excell je voudrais lancer une macro qui converti le fichier excell en Texte(la macro est créé)
    mais je ne sais pas comment associer un fichier excell à une macro et ensuite executer cet macro.


    voilà.

  6. #6
    Membre expérimenté
    Avatar de kaiser59
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    1 264
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Novembre 2005
    Messages : 1 264
    Points : 1 350
    Points
    1 350
    Par défaut
    Citation Envoyé par Immobilis Voir le message
    .. Ceci dit, une macro étant rédigée en code VB pourquoi ne pas la transcrire en vbscript? Que fait cette macro?
    Ok, mais comme te le fais remarquer Immobilis avec Asp tu peux quasi reproduire intégralement le code de ta macro donc essaye de la re-transcrire en fonction, par exemple:

    Code asp : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     convertNumToString rs("num") 'ou autre
     
    'et ta fonction
    function convertNumToString (strNum)
     convertNumToString = "<td>'"& strNum &"</td>"
    end function

    ------
    Par ailleurs, vue que tu utilises Asp+Excel serais-tu par hasard comment faire un retour à la ligne dans une cellule, l'équivalent du alt+Entrée car lorsque je met <br> il va dans une autre cellulle Merci d'avance

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    522
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 522
    Points : 522
    Points
    522
    Par défaut
    Citation Envoyé par kaiser59 Voir le message
    Par ailleurs, vue que tu utilises Asp+Excel serais-tu par hasard comment faire un retour à la ligne dans une cellule, l'équivalent du alt+Entrée car lorsque je met <br> il va dans une autre cellulle Merci d'avance

    Salut,

    Faut ajouter un style dans ta page :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    <style>
    br {mso-data-placement:same-cell;}
    </style>

  8. #8
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 9
    Points : 2
    Points
    2
    Par défaut
    désolé pour ton problème de retour je ne sais pas mais tekpaf semble t'indiquer une solution


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     convertNumToString rs("num") 'ou autre
     
    'et ta fonction
    function convertNumToString (strNum)
     convertNumToString = "<td>'"& strNum &"</td>"
    end function
    le probleme de cet méthode c'est que pour convertir quelquechose il faut pouvoir le lire hors c'est vide ou "null" donc cet solution n'est pas possible.
    en pratique rs("num") est egal à NULL, il ne lit pas la cellule quoi !
    (je rappel que si toute la colonne du fichier excel est en texte, il le lit sans probleme)

    j'ai un fichier excell qui est associé à une macro et donc comment executer cet macro par asp?

    merci

  9. #9
    Modérateur
    Avatar de roro06
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    1 480
    Détails du profil
    Informations personnelles :
    Âge : 55
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 1 480
    Points : 1 978
    Points
    1 978
    Par défaut
    Bonjour

    Il faut que excel soit installé sur ton serveur, puis que tu instancie un objet "excel.application", puis utiliser la méthode run(). du style :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    dim oe
    oe=Server.createObject("excel.application")
    oe.run("maMacro")
    (pas testé, mais c'est qqch comme ça)

    Il faut regarder l'aide de l'API dans le fichier "VBAXLi.CHM", dans le dossier 1036 de Microsoft Office

    Remarque : cette méthode est fortement déconseillée par MS himself, voir le lien que j'ai rajouté dans les "chaines de connexion"

  10. #10
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 9
    Points : 2
    Points
    2
    Par défaut
    merci pour ces infos je vais tester ça et vous tiens au courant.

  11. #11
    Expert éminent
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Points : 9 506
    Points
    9 506
    Par défaut
    Ouais sauf qu'il ne faudrait pas installer d'applications de ce genre (uniquement le strict minimum) sur un serveur web (à cause des failles de sécurité).

    A+

  12. #12
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 9
    Points : 2
    Points
    2
    Par défaut
    alors comment installer le minimum ?

    il faut juste installer excel sur le serveur mais y a t'il un autre moyen sans l'installer?

  13. #13
    Expert éminent
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Points : 9 506
    Points
    9 506
    Par défaut
    ASP + VBSCRIPT.

Discussions similaires

  1. [AC-2003] Comment executer une macro Excel sous Access
    Par Deustalos dans le forum VBA Access
    Réponses: 6
    Dernier message: 04/11/2009, 12h30
  2. [Manipulation Excel] Executer une macro Excel depuis Access
    Par sebastien_oasis dans le forum VBA Access
    Réponses: 2
    Dernier message: 30/05/2007, 15h21
  3. comment executer une macro?$
    Par khaliloum dans le forum IHM
    Réponses: 1
    Dernier message: 11/06/2006, 16h41
  4. Lancer une macro Excel depuis Access
    Par marcobosio dans le forum Access
    Réponses: 6
    Dernier message: 05/06/2006, 20h51
  5. Comment insérer une macro excel dans une macro word?
    Par max2245 dans le forum VBA Word
    Réponses: 15
    Dernier message: 07/01/2006, 17h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo