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

Macros et VBA Excel Discussion :

[E-00] Transcrire une formule Excel en script VBA


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2008
    Messages : 10
    Par défaut [E-00] Transcrire une formule Excel en script VBA
    Bonjour,

    Novice en VBA, je souhaiterais compléter une macro existante de la formule Excel virtuelle suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    IF(A4="";"";IF((VLOOKUP(A4;Codes!A2: D36;3;FALSE))="";FaxTo(VLOOKUP(A4;Codes!A2: D36;4;FALSE));MailTo(VLOOKUP(A4;Codes!A2: D36;3;FALSE))))
    Un expert en VBA saurait-il m'aider ?
    D'avance merci.

  2. #2
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2007
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 514
    Par défaut
    Bonsoir et bienvenue sur dvp,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    If Range("A4") = "" Then
       '
    Else
       If WorksheetFunction.VLookup(Range("A4"), Sheets("Codes").Range("A2:D36"), 3, False) = "" Then
          FaxTo VLookup(Range("A4"), Sheets("Codes").Range("A2:D36"), 4, False)
       Else
          MailTo VLookup(Range("A4"), Sheets("Codes").Range("A2:D36"), 3, False)
       End If
    End If
    Ce n'est qu'une interprétation possible de ce que tu as écrit, à tester donc. Sinon essaye de reformuler ta question plus précisément.

    Cordialement,

    Tirex28/

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2008
    Messages : 10
    Par défaut
    Merci pour ta réponse Tirex28 !

    J'ai fait l'essai mais ça bug sur Vlookup (après FaxTo)... "Erreur de compilation, Sub ou Function non définie"

    Pour être peut-être plus explicite je souhaiterais qu'à partir d'une page donnée et du contenu d'une cellule de celle-ci, la macro fasse une recherche en V dans un tableau, si la colonne Mail est vide, elle va dans la colonne Fax et envoie un fax au numéro qui s'y trouve et sinon, si la colonne Mail contient une adresse, envoyer un mail à celle-ci.

    J'espère avoir été plus claire.
    En tout cas merci beaucoup pour ton aide.

  4. #4
    Membre Expert Avatar de Godzestla
    Homme Profil pro
    Chercheur de bonheur
    Inscrit en
    Août 2007
    Messages
    2 403
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Chercheur de bonheur
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2007
    Messages : 2 403
    Par défaut
    Bonjour,

    si ta formule existe dans une cellule, tu démarres l'enregistreur de macro, tu prends ta cellule en modif (F2) sans rien changer, tu arrêtes l'enregistreur de macro et tu regarde dans medule (Module1 ?) le code génér pour remplacer ta formule.

    cela donne généralement une bonne base de départ.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Octobre 2008
    Messages : 10
    Par défaut
    Bonjour Godzestla et merci pour ta réponse.

    La formule n'existe pas dans une cellule, à cause de MailTo et FaxTo qui ne sont pas compatibles (je crois) avec une formule Excel. C'est pour cela que j'ai parlé d'une formule virtuelle. Elle était juste là pour expliquer ce que je souhaitais obtenir.

    Et je ne sais pas trop comment générer du code pour les si, les recherches, MailTo et FaxTo... et tout compiler pour que ça tienne la route !

  6. #6
    Membre émérite

    Profil pro
    Inscrit en
    Mai 2007
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 514
    Par défaut
    Bonjour,

    Les procédures MailTo et FaxTo sont elles déja ecrites?

    Cordialement,

    Tirex28/

Discussions similaires

  1. Exécution automatique d'une formule Excel à partir de VBA
    Par jumiara dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 02/11/2010, 12h13
  2. Transformé une formule Excel en script VBA ?
    Par SFLEY dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 06/01/2007, 11h48
  3. Simplifier une formule excel
    Par beegees dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 24/04/2006, 09h10
  4. [debutant] Traduite une formule excel dans access
    Par zelob dans le forum Access
    Réponses: 5
    Dernier message: 25/02/2006, 05h17
  5. [VBA]Passer une variable dans une formule Excel
    Par David1974 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 27/01/2006, 16h52

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