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 :

Generation d'un fichier EXCEL stocké dans Access


Sujet :

VBA Access

  1. #1
    Membre régulier
    Inscrit en
    Juin 2007
    Messages
    227
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 227
    Points : 99
    Points
    99
    Par défaut Generation d'un fichier EXCEL stocké dans Access
    Bonjour,

    je voudrais stocké (enregistré ) un fichier Excel dans mon application Access de facon a ce que je puisse le generer et le remplir a partir d'information dans ma base automatiquement on appuyant sur un boutton .

    Merci donner des pistes ...

  2. #2
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 653
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 653
    Points : 34 370
    Points
    34 370
    Par défaut
    bonjour,
    ta description est un peu brève, mais tu dois pouvoir utiliser un fichier Excel en ajoutant dans ton projet la référence Excel et passer par
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim AppExcel As Excel.Application
    Le traitement du fichier sous Excel se fera alors comme sous Excel

  3. #3
    Membre régulier
    Inscrit en
    Juin 2007
    Messages
    227
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 227
    Points : 99
    Points
    99
    Par défaut
    Voici ma function

    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
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
     
    Function ExcelAutomation01()
     
    Dim xls As Excel.Application
    Dim wbk As Excel.Workbook
    Dim sht As Excel.Worksheet
     
    ' Create an Excel objet
    Set xls = CreateObject("Excel.Application")
     
    ' Open de Excel file
        xls.Workbooks.Open "C:\Questionnaire.xls"
        'xls.Visible = True
     
       ' Instancier la feuille active dans le classeur
       Set sht = wbk.ActiveSheet
     
       ' Créer un nouveau classeur
       Set wbk = .Workbooks.Add
     
       ' Ecrire quelques valeurs
       With sht
           .Range("D20").Value = 10
           .Range("D21").Value = 20
           .Range("D22").Value = 30
           .Range("D23").Value = 34
           .Range("E29").Value = 12
     
     
       End With
     
       ' Sauvegarder et fermer le classeur
       wbk.SaveAs "C:\Questionnaire.xls"
       wbk.Close
     
       ' Quitter Excel
       '.Quit
    'End With
     
    ' Libérer les variables objet
    'Set sht = Nothing
    'Set wbk = Nothing
    'Set xls = Nothing
     
        MsgBox (" End fill information ")
    End Function
    j'ai une erreur au niveau de "Set wbk = .Workbooks.Add"


    MERCI


  4. #4
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 653
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 653
    Points : 34 370
    Points
    34 370
    Par défaut
    il faut spécifier d'où tu sors le "." devant workbooks aussi
    un petit with serait le bienvenu ^^

  5. #5
    Membre régulier
    Inscrit en
    Juin 2007
    Messages
    227
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 227
    Points : 99
    Points
    99
    Par défaut
    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
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
     
     
    Function ExcelAutomation01()
     
    Dim xls As Excel.Application
    Dim wbk As Excel.Workbook
    Dim sht As Excel.Worksheet
     
    ' Create an Excel objet
    Set xls = CreateObject("Excel.Application")
     
    ' Open de Excel file
        xls.Workbooks.Open "C:\Questionnaire.xls"
        'xls.Visible = True
     
       ' Instancier la feuille active dans le classeur
       Set sht = wbk.ActiveSheet
     
       ' Créer un nouveau classeur
       Set wbk = xls.Workbooks.Add
     
       ' Ecrire quelques valeurs
       With sht
           .Range("D20").Value = 10
           .Range("D21").Value = 20
           .Range("D22").Value = 30
           .Range("D23").Value = 34
           .Range("E29").Value = 12
     
     
       End With
     
       ' Sauvegarder et fermer le classeur
       wbk.SaveAs "C:\Questionnaire.xls"
       wbk.Close
     
       ' Quitter Excel
       '.Quit
    'End With
     
    ' Libérer les variables objet
    'Set sht = Nothing
    'Set wbk = Nothing
    'Set xls = Nothing
     
        MsgBox (" End fill information ")
    End Function

    voila j'ai modifié .juste une erreur d'ailleur La function est une erreur .

    MERCI de me dire keski va pa a votre avis

  6. #6
    Rédacteur/Modérateur

    Avatar de Jean-Philippe André
    Homme Profil pro
    Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Inscrit en
    Juillet 2007
    Messages
    14 653
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Architecte Power Platform, ex-Développeur VBA/C#/VB.Net
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 14 653
    Points : 34 370
    Points
    34 370
    Par défaut
    pense à créer les éléments dans le bon ordre déjà
    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
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    Option Explicit
     
    Function ExcelAutomation01()
     
    Dim xls As Excel.Application
    Dim wbk As Excel.Workbook
    Dim sht As Excel.Worksheet
     
    ' Create an Excel objet
    Set xls = CreateObject("Excel.Application")
     
    ' Open de Excel file
        xls.Workbooks.Open "C:\Documents and Settings\omar.alaoui\Mes documents\NEXANS\documents de travail\REACH Supplier Questionnaire.xls"
        'xls.Visible = True
     
       ' Instancier la feuille active dans le classeur
       Set wbk = xls.Workbooks.Add
       Set sht = wbk.ActiveSheet
     
       ' Créer un nouveau classeur
     
     
       ' Ecrire quelques valeurs
       With sht
           .Range("D20").Value = 10
           .Range("D21").Value = 20
           .Range("D22").Value = 30
           .Range("D23").Value = 34
           .Range("E29").Value = 12
     
     
       End With
     
       ' Sauvegarder et fermer le classeur
       wbk.SaveAs "C:\Documents and Settings\omar.alaoui\Mes documents\NEXANS\documents de travail\REACH Supplier Questionnaire.xls"
       wbk.Close
     
       ' Quitter Excel
       '.Quit
    'End With
     
    ' Libérer les variables objet
    'Set sht = Nothing
    'Set wbk = Nothing
    'Set xls = Nothing
     
        MsgBox (" End fill information ")
    End Function

  7. #7
    Membre régulier
    Inscrit en
    Juin 2007
    Messages
    227
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 227
    Points : 99
    Points
    99
    Par défaut
    Bonjour ,

    j'ai reussi a le faire avec se 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
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
     
    Sub ExcelAutomation01()
     
    Dim xlApp As Object
    Dim wbk As Object
    'Dim sht As Object
     
    ' Créer un objet Excel
    ' (ce qui équivaut à démarrer Excel à distance)
    Set xlApp = New Excel.Application
    Set wbk = xlApp.Workbooks.Add
    'Set sht = xlApp.wbk.ActiveSheet
     
    With xlApp
       ' Rendre Excel visible
       '.Visible = True
     
       ' Créer un nouveau classeur
       'Set wbk = Workbooks.Add
       Set wbk = xlApp.Workbooks.Open("C:\Documents and Settings\omar.alaoui\Mes documents\NEXANS\documents de travail\RR.xls")
       ' Instancier la feuille active dans le classeur
       Set sht = wbk.ActiveSheet
     
       ' Ecrire quelques valeurs
       With sht
           .Range("D20").Value = 10
           .Range("D21").Value = 20
           .Range("D22").Value = 30
           .Range("D23").Value = 34
           .Range("E29").Value = 12
       End With
     
       ' Sauvegarder et fermer le classeur
    '   ActiveWorkbook.SaveAs FileName:="C:\Documents and Settings\omar.alaoui\Mes documents\NEXANS\documents de travail\REACH Supplier Questionnaire.xlsC:\Documents and Settings\omar.alaoui\Mes documents\NEXANS\documents de travail\RR.xls"
       'ActiveWorkbook.Close
       ActiveWorkbook.Close savechanges:=True
       ' Quitter Excel
       'wbk.Quit
    End With
     
    ' Libérer les variables objet
    Set sht = Nothing
    Set wbk = Nothing
    Set xlApp = Nothing
     
    End Sub
    apres que j'ai rempli la feuille excel , il me demande au moment de la femeture si je veux bien sauver les modification ??
    est ce qu'il ya un moyen de forcer l'enregistrement pour ne par recevoir le message .??

    parti de fermeture et enregistrement "ActiveWorkbook.Close savechanges:=True"

    MERCI

Discussions similaires

  1. Réponses: 1
    Dernier message: 17/03/2011, 17h20
  2. Réponses: 170
    Dernier message: 12/08/2009, 08h56
  3. 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
  4. Import de fichier Excel (CSV) dans MySQL
    Par mathieu77186 dans le forum Outils
    Réponses: 2
    Dernier message: 27/03/2006, 23h23
  5. Import de fichier CSV automatique dans Access
    Par Jmar dans le forum Access
    Réponses: 4
    Dernier message: 20/01/2006, 10h48

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