Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 07/06/2011, 10h57   #1
Membre habitué
 
Homme
Consultant comptable
Inscription : mai 2011
Messages : 101
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Consultant comptable

Informations forums :
Inscription : mai 2011
Messages : 101
Points : 112
Points : 112
Par défaut Interaction avec excel

Bonjour,

dans access j'utilise la fonction toute bête

Code :
DoCmd.RunCommand acCmdExport
pour exporter mes données provenant d'une requète sous un format excel.
L'avantage de cette commande est que l'on peut définir le nom et le format d'export(donc pas forcément excel).

Ce qui arrive à ma question : comment agir sur le classeur excel et plus principalement sur la feuille excel, considérant que dans les tutoriels d'interaction avec excel il y a toujours la définition du nom et du répertoire.
En effet je veux mettre une sorte de copyright sur la première feuille excel (donc toucher au range de la première feuille que je crée) qui se crée en automatique en plus du fichier d'export.

j'espère avoir été clair je clarifierais si besoin

merci
amnorian est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/06/2011, 12h36   #2
Expert Confirmé
 
Avatar de Godzestla
 
Homme
Chercheur de bonheur
Inscription : août 2007
Messages : 2 255
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 47
Localisation : Belgique

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

Informations forums :
Inscription : août 2007
Messages : 2 255
Points : 2 979
Points : 2 979
Bonjour,

merci de penser à la avant de poser une question qui est souvent abordée.

En ce qui te concerne, le sujet est traité ici
__________________
(\ _ /) Cordialement G@dz
(='.'=)

(")-(") Vous avez des neurones. Sollicitez-les. . Si vous êtes aidé, pensez à Voter.
Godzestla est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 07/06/2011, 14h07   #3
Membre habitué
 
Homme
Consultant comptable
Inscription : mai 2011
Messages : 101
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Consultant comptable

Informations forums :
Inscription : mai 2011
Messages : 101
Points : 112
Points : 112
Malheureusement non parceque dans l'exemple que tu me donne, il est bien fait mention :
"J'initialise mes variables"
Code :
1
2
Set xlApp = CreateObject("Excel.Application")
    Set xlBook = xlApp.Workbooks.Open("C:\Chemin\Feuille.xls")
Or je ne veux pas initialiser mes variables, puisque je veux que l'utilisateur me donne la variable, un peu comme dans excel

Code :
1
2
Nom_variable = Application.GetOpenFilename
Nouveau_Classeur = Application.Workbooks.Open(Nom_variable)
que je n'ai pas trouvé dans le vba d'accès (je parle du Application.GetOpenFilename)

et comme je l'ai dis :"L'avantage de cette commande est que l'on peut définir le nom et le format d'export(donc pas forcément excel)."

je suis sur que la solution est toute simple, mais n'étant pas à l'aise avec access j'ai beau cherché, je ne vois pas.

merci
amnorian est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/06/2011, 11h33   #4
Expert Confirmé
 
Avatar de Godzestla
 
Homme
Chercheur de bonheur
Inscription : août 2007
Messages : 2 255
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 47
Localisation : Belgique

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

Informations forums :
Inscription : août 2007
Messages : 2 255
Points : 2 979
Points : 2 979
Et bien....

je crois que tu n'as pas fort envie de chercher, sinon tu te rendrais très vite compte que au lieu de faire ceci
Code :
1
2
3
 
Set xlApp = CreateObject("Excel.Application")
    Set xlBook = xlApp.Workbooks.Open("C:\Chemin\Feuille.xls")
tu pourrais faire ceci
Code :
1
2
3
Set xlApp = CreateObject("Excel.Application")
    Set xlBook = xlApp.Workbooks.Open(Nom_variable)
__________________
(\ _ /) Cordialement G@dz
(='.'=)

(")-(") Vous avez des neurones. Sollicitez-les. . Si vous êtes aidé, pensez à Voter.
Godzestla est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 08/06/2011, 16h24   #5
Membre habitué
 
Homme
Consultant comptable
Inscription : mai 2011
Messages : 101
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Consultant comptable

Informations forums :
Inscription : mai 2011
Messages : 101
Points : 112
Points : 112
Merci Godzestla de ton aide

je me suis visiblement mal exprimé désole

je cherche à exporter des informations d'un formulaire dans excel

en utilisant les macros d'access (et pas le vba directement)
il me fait un export basique

et donc quand je vais regarder le code il me donne ceci
Code :
DoCmd.RunCommand acCmdExport
j'ai trouvé avec la faq comment obtenir le nom de la variable (http://access.developpez.com/faq/?pa...#AffBoitDialog) mais la commande spécifié ne me permet pas de faire ce que je veux
Je tente donc d'utiliser l'export simple comme expliqué

Code :
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, Me, , True
mais ca ne marche pas non plus


En tout cas merci je continu de chercher
amnorian est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/06/2011, 14h29   #6
Membre habitué
 
Homme
Consultant comptable
Inscription : mai 2011
Messages : 101
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations professionnelles :
Activité : Consultant comptable

Informations forums :
Inscription : mai 2011
Messages : 101
Points : 112
Points : 112
j'avance et j'ai réussi à faire ce que je veux mais pour la requète et pas pour le formulaire. Mon formulaire fais des filtres et n'agence pas les colonnes de la même façon.
Je ne comprends pas que je n'y arrive pas en utilisant le nom du formulaire

ci joint mon code
Code :
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
Private Sub Commande50_Click()
Lien = OuvrirUnFichier(Application.hWndAccessApp, "Parcourir", 1, "Fichier excel", "xls")'macro qui provient de la FAQ de developpez.com
DoCmd.TransferSpreadsheet acExport, _
                    acSpreadsheetTypeExcel9, _
                    "Justif_solde", _
                    Lien, _
                    True
 
 
'J'initialise mes variables
    Set xlApp = CreateObject("Excel.Application")
    Set xlBook = xlApp.Workbooks.Open(Lien)
 
    'Ajouter une feuille de calcul nommée Toto
    Set xlSheet = xlBook.Worksheets.Add
    xlSheet.Name = "Copy"
 
    'Manipuler une cellule
    xlSheet.Cells(1, 1) = "Réalisé par "
 
 
    xlBook.Save
    xlApp.Quit
    Set xlSheet = Nothing
    Set xlBook = Nothing
    Set xlApp = Nothing
End Sub
amnorian est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h29.


 
 
 
 
Partenaires

Hébergement Web