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 :

Sauvegarder un classeur Excel actif


Sujet :

VBScript

  1. #1
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Septembre 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2011
    Messages : 5
    Points : 2
    Points
    2
    Par défaut Sauvegarder un classeur Excel actif
    Bonjour,

    J'utilise les scripts depuis peu de temps et je bloque un peu là.

    En fait j'utilise un script qui ma fait une extraction depuis une base de données vers Excel.
    Mais mon soucis est que ce classeur ainsi crée n'est pas sauvegardé, il est juste actif dans Excel.
    Je peux le sauvegarder manuellement mais comme je voudrais pouvoir enchainer plusieurs script créeant à chaque fois un classeur excel, je voudrais automatiser la sauvegarde.

    Donc, j'essaie de trouver comment réaliser la sauvegarde du classeur exporté.
    Comme il n'y a pas de chemin d'accès, je ne trouve pas la solution

    Vous auriez une idée ?

    Merci d'avance

  2. #2
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    Il ressemble à quoi ce script ? .. il lance excel comment ?

  3. #3
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Septembre 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2011
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    Le script est un script créer par un record des actions faites sur SAP, un peu comme on peut enregistrer des macros dans excel.

    Et la dernière action du script actuel est de cliquer sur le menu et de choisir d'exporter les données dans Excel.

    Mais ce n'est pas le script qui ouvre Excel, mais SAP, et sans le sauvegarder, c'est pour cela que je bloque....

  4. #4
    Modérateur
    Avatar de l_autodidacte
    Homme Profil pro
    Retraité : Directeur de lycée/Professeur de sciences physiques
    Inscrit en
    Juillet 2009
    Messages
    2 417
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Retraité : Directeur de lycée/Professeur de sciences physiques
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2009
    Messages : 2 417
    Points : 5 816
    Points
    5 816
    Par défaut
    Quand bbil a dit
    Il ressemble à quoi ce script ? .. il lance excel comment ?
    cela veut dire qu'il(et les gens du forum) veut voir la partie du code qui cause le problème !!!!!

  5. #5
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Septembre 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2011
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    Oui j'avais bien compris.

    Mais par ma réponse j'expliquais que mon script ne lançait pas excel.
    Mon script demande juste à Sap d'exporter des données vers un classeur Excel.

    Après c'est Sap qui ouvre Excel, pas mon script, donc le voir n'apportera rien...

    Ce que je n'arrive pas à faire faire à mon script c'est de lui faire sauvegarder ce fichier Excel sans l'ouvrir puisque Sap le fait déja.

    Je ne sais pas si je suis clair ?

  6. #6
    Expert éminent
    Avatar de hackoofr
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2009
    Messages
    3 840
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juin 2009
    Messages : 3 840
    Points : 9 225
    Points
    9 225
    Par défaut

    Pouvez-vous SVP faire un petit copier coller ici de votre code source en le mettant entre

  7. #7
    Candidat au Club
    Homme Profil pro
    Inscrit en
    Septembre 2011
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2011
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    J'ai finalement contourner le problème en exportant les données vers un fichier locale, donc avec un fichier sauvegardé que je peux ouvrir avec mon script.

    Par contre j'ai un soucis sur les formats de mes cellules...

    Mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    Set objExcel = CreateObject("Excel.Application" ) 
    objExcel.Visible = False 
    'permet d'enregistrer sans confirmation 
    objExcel.DisplayAlerts = FALSE 
    'on ouvre le fichier 
    Set objWorkbook = objExcel.Workbooks.Open("C:\Thourotte\Sap\RECEPTION.XLS" ) 
    'on ouvre la premiere feuille 
    Set objWorksheet = objWorkbook.Worksheets(1) 
    'on selectionne la premiere colonne 
    set Selection = objWorksheet.Columns(1)
    'on supprime la colonne selectionnée 
    Selection.EntireColumn.Delete
    set Selection = objWorksheet.Columns(1)
    Selection.EntireColumn.Delete
    set Selection = objWorksheet.Rows(1)
    Selection.EntireRow.Delete
    set Selection = objWorksheet.Rows(1)
    Selection.EntireRow.Delete
    set Selection = objWorksheet.Rows(1)
    Selection.EntireRow.Delete
    '60
    set Selection = objWorksheet.Rows(2)
    Selection.EntireRow.Delete
    objWorksheet.Range("H1").Value = "Quantity"
     
    set Selection = objWorksheet.Columns(10)
    Selection.replace ".", "/"
    Selection.NumberFormat = "dd/mm/yyyy" 
    objWorkbook.Worksheets(1).Columns(4).NumberFormat = "@"
     
    objWorkbook.Save() 
    objWorkbook.close() 
    'on ferme le fichier 
    objExcel.Quit
    Le problème se produit ligne 29.
    Je pensais que cela fonctionnait pour me modifier le format de mes cellules de la colonne 4 en texte. (actuellement en format standard).

    Cela ne devrait-il pas marcher ?

Discussions similaires

  1. Quand je sauvegarde un classeur excel est lent
    Par Subkill dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 18/06/2015, 14h51
  2. [AC-2007] Sauvegarder un classeur excel qui change de nom
    Par Bernard67 dans le forum VBA Access
    Réponses: 4
    Dernier message: 04/02/2013, 08h13
  3. Sauvegarde de classeur excel par boite de dialogue excel
    Par Vincent32 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 28/02/2012, 18h57
  4. Sauvegarder un classeur EXCEL à la même version que l'application
    Par jkrtu dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 14/01/2008, 10h49
  5. [Excel] Sauvegarder un classeur sans userform
    Par maketossss dans le forum Macros et VBA Excel
    Réponses: 16
    Dernier message: 10/12/2005, 16h41

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