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

VBScript Discussion :

recherche valeur dans cellule excel depuis un vbs


Sujet :

VBScript

  1. #1
    Membre à l'essai
    Homme Profil pro
    Superviseur de Hotline
    Inscrit en
    Décembre 2013
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Superviseur de Hotline
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2013
    Messages : 28
    Points : 12
    Points
    12
    Par défaut recherche valeur dans cellule excel depuis un vbs
    Bonjour, je cherche à éviter l'utilisation de macro sur un fichier excel car sharepoint ne le supporte pas

    je souhaite ouvrir un fichier excel A dans lequel la ligne 2 (par ex) contient différentes dates.

    En fonction de la date du jour, je veux que le script ouvre un fichier B nommé type XXX_site_date.xls et qu'il copie une colonne vers le fichier A dans la colonne avec la date correspondante.

    Quelle fonctions utiliser?

    Merci pour votre aide

  2. #2
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Secteur : Service public

    Informations forums :
    Inscription : Novembre 2011
    Messages : 14
    Points : 18
    Points
    18
    Par défaut
    Bonjour Gamack,

    Pour utiliser Excel depuis VBS, vous pouvez débuter avec ce bout de code qui permet d'ouvrir un fichier Excel et de lire la première cellule de la ligne 2 de la feuille active :
    Set oXL = WScript.CreateObject("EXCEL.application")
    oXL.Workbooks.Open "D:\..\...\fichier_A.xls"
    oXL.visible=true
    '............ votre code
    WScript.Echo oXL.ActiveSheet.cells(2,1).value
    '.............................
    oXL.Quit
    Set oXL = Nothing
    si vous avez besoin de faire une boucle sur une colonne pour récupérer, par exemple, les données de la 3ème ligne à la dernière complétée de la colonne B, vous pouvez insérer ce bout de code:
    intRow = 3
    Do Until oXL.Cells(intRow,2).Value = ""
    WScript.Echo oXL.ActiveSheet.cells(intRow,2).value
    intRow = intRow + 1
    Loop
    Reste plus qu'à l'adapter à vos besoins.
    Bon courage

  3. #3
    Membre à l'essai
    Homme Profil pro
    Superviseur de Hotline
    Inscrit en
    Décembre 2013
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Superviseur de Hotline
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2013
    Messages : 28
    Points : 12
    Points
    12
    Par défaut
    Bonjour Guillaume,

    Merci pour ton retour.

    En fait j'ai défini une variable datejour dans mon vbs.
    J'ai essayé de retrouvé la valeur de datejour dans mon fichier excel via la fonction .find mais ça ne marche pas.

    Je me suis dis que c'était parce que il n'y avait pas d'interaction avec mon vbs et excel que j'ai ouvert.

    J'ai donc renseigné sur la feuille 7 de mon classeur la date du jour dans la cellule B2 (B2=aujourd'hui()).

    Je souhaite donc recherché via vbs la valeur de la cellule B2 de la feuille 7 sur la ligne 1 de la feuille 1.

    une fois la valeur trouvée, je souhaite copier dans la colonne des valeurs d'un autre classeur...

    Voici le bout de script que j'ai écris mais qui ne fonctionne pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Set XlDate =.sheets(7).cells(2,2)
     
    .Sheets(1).rows(1).find (XlDate)
     
    ColumnNum = .activecell.column
     
    wscript.echo ColumnNum
     
    ColumnLetter = Chr(64 + ColumnNum)
     
    wscript.echo ColumnLetter
     
    .sheets(1).cells(137,ColumnNum).pastespecial
    Merci pour ton aide.

  4. #4
    Membre à l'essai
    Homme Profil pro
    Superviseur de Hotline
    Inscrit en
    Décembre 2013
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Superviseur de Hotline
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2013
    Messages : 28
    Points : 12
    Points
    12
    Par défaut
    J'ai réussi à avancer sur mon script suite à tes astuces mais maintenant je bloque à un autre niveau.

    J'arrive à copier des plages de cellules du fichier A vers le fichier B, mais celle ci sont collés au format text et non en chiffre et pour le coup inexploitable pour mes graphiques..

    une idée?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    If fso.fileExists (EngPath & centre & FNBFAICO & extfichier & ".xlsx") then
     
    .workbooks.open(EngPath & centre & FNBFAICO & extfichier & ".xlsx")
    .sheets(1).Range("B2:B26").Copy
    .Activeworkbook.close
     
    SuiviEngts.activate
    .sheets(1).cells(9,ColumnNum).PasteSpecial
     
    End If

  5. #5
    Membre à l'essai
    Homme Profil pro
    Superviseur de Hotline
    Inscrit en
    Décembre 2013
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Superviseur de Hotline
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2013
    Messages : 28
    Points : 12
    Points
    12
    Par défaut
    bonjour Guillaume,

    J'ai presque finalisé mon script grace a tes conseils :-)

    Un dernier blocage neanmoins :-(.

    Je souhaite exporter chaque graphique contenu dans mon classeur en gif ou png.

    j'ai essayé .chart ou.chartobjects mais ca ne fonctionne pas...

Discussions similaires

  1. Copie de date dans cellule excel depuis calendrier sous vba
    Par francoiscrna dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 29/12/2014, 16h45
  2. [AC-2007] Accéder à une TextBox dans cellule Excel depuis Access
    Par staff88 dans le forum VBA Access
    Réponses: 2
    Dernier message: 24/01/2013, 04h32
  3. [XL-2003] Rechercher valeur dans cellule
    Par Cocotte278 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 22/09/2011, 10h22
  4. Recherche d'une valeur dans un txt depuis vba excel
    Par Ted37 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 13/08/2008, 08h28
  5. Rechercher une valeur dans fichier Excel depuis VBA Access
    Par tribaleur dans le forum VBA Access
    Réponses: 1
    Dernier message: 16/07/2008, 14h10

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