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

VBA Access Discussion :

Automation Excel création de feuille


Sujet :

VBA Access

  1. #1
    Membre régulier
    Inscrit en
    Février 2006
    Messages
    219
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 219
    Points : 108
    Points
    108
    Par défaut Automation Excel création de feuille
    Hello tout le monde, et merci beaucoup de m'aider.


    Voila, cela fait quelques heures que je cherche.. en vain..


    Et pourtant, je suis certain que cela ne doit pas etre compliqué.

    Voici ce qui me pose probleme:

    Je voudrais en VBA, grace à l'automation excel, ouvrir une feuille définie(son nom: 3.1.unif institution unif) d'un classeur non vide(son nom est dans la variable: XlFilename) , la modifier, et l'enregistrer dans le meme classeur sous un autre nom.

    Pour le moment, j'ai ceci:


    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
     
        Dim xlApp As Excel.Application
        Dim xlBook As Excel.Workbook
        Dim xlSheet As Excel.Worksheet
     
        Set xlApp = CreateObject("Excel.Application")
     
    Set xlBook = xlApp.Workbooks.Open(Application.CurrentProject.Path & "\" & XlFilename & ".xls")
     
    For I = 0 To UBound(nomInst())
               Set xlSheet = xlBook.Sheets("3.1.unif institution unif")
               xlSheet.Activate
               xlSheet.Name = "3.1.unif institution unif" & nomInst(I)
               xlSheet.Copy After:=Worksheets("3.1.unif institution unif")
               xlSheet.Cells(LIG1 + 3, COL1 + 1) = nomInst(I)
     
             Next
     
     
      xlBook.Save
          xlBook.Close
          xlApp.Quit

  2. #2
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 526
    Points
    14 526
    Par défaut
    Bonjour,

    Je verrais ça comme ça :
    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
     
        Dim xlApp As Excel.Application
        Dim xlBook As Excel.Workbook
        Dim xlSheet As Excel.Worksheet
        Dim xlNewSheet As Excel.Worksheet 
        Set xlApp = CreateObject("Excel.Application")
     
    Set xlBook = xlApp.Workbooks.Open(Application.CurrentProject.Path & "\" & XlFilename & ".xls")
     
    For I = 0 To UBound(nomInst())
               ' Récupère la feuille à copier
               Set xlSheet = xlBook.Sheets("3.1.unif institution unif")
               ' Copie la feuille
               xlSheet.Copy After:=xlSheet
               ' Récupère la feuille copiée
               Set xlNewSheet = xlBook.Sheets(xlSheet.Index + 1)
               ' Change le nom de la feuille copiée
               xlNewSheet.Name = xlsheet.name & nomInst(I)
               ' Modifie la valeur de la cellule
               xlNewSheet.Cells(LIG1 + 3, COL1 + 1) = nomInst(I)
               ' Libère les objets feuilles
               Set xlNewSheet = Nothing
               Set xlSheet = Nothing
    Next
     
    xlBook.Save
    xlBook.Close
    Set xlBook = Nothing
    xlApp.Quit
    Set xlApp = Nothing

  3. #3
    Membre régulier
    Inscrit en
    Février 2006
    Messages
    219
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 219
    Points : 108
    Points
    108
    Par défaut
    Merci beaucoup pour ta réponse rapide!

    Je teste ca de suite, et je vous tiens au courrant.


    ==> Merciiiii, c'est exactement ca!!!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. VBA sous excel - Macro - Création de feuilles à partir d'une liste
    Par Sylione dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 14/05/2007, 09h42
  2. [JXL] Problème avec création de feuille excel
    Par mittim dans le forum Documents
    Réponses: 2
    Dernier message: 10/08/2006, 15h40
  3. [VBA Excel] macro création de feuille
    Par Viper7 dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 29/06/2006, 11h13
  4. VB6 : création de feuilles dans un classeur Excel
    Par getea85 dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 04/11/2005, 16h37
  5. automation excel : comment indiquer la feuille de travail ?
    Par mat_lefebvre dans le forum Access
    Réponses: 2
    Dernier message: 04/12/2003, 15h14

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