![]() |
| Le forum de référence en programmation et développement. Articles, cours et tutoriels du débutant au chef de projet et DBA confirmé. | |||||||
|
|||||||
| VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE. |
![]() |
|
|
Outils de la discussion |
|
|
#1 (permalink) |
|
Membre régulier
![]() Date d'inscription: janvier 2008
Messages: 110
|
Bonjour, j'espère que tout va bien pour vous!
De mon côté j'ai un petit soucis avec Access! J'aimerais piloter excel depuis Access mais je n'arrive pas du tout à passer un paramètre (un nom de fichier sous la forme d'une variable String) à Excel. En fait j'extrais une grosse quantité de données depuis Access et j'exporte le tout dans un fichier Excel. Ensuite, afin d'utiliser ces données, je synthétise les informations dans un tableau que je prends dans un autre fichier Excel et que je copie dans mon fichier d'exportation. Seulement je n'arrive pas à indiquer à Excel dans quel fichier il doit coller ce fameux tableau. Voivi la requête Âccess dans laquelle j'exécute les macros Excel: Code :
Private Sub Mise_en_page_export(tx_fichier As String) Dim xlApp As Excel.Application Dim xlSheet As Excel.Worksheet Dim xlBook As Excel.Workbook Dim i As Long Dim vtemp As Variant ' Initialisation des variables Set xlApp = CreateObject("Excel.Application") Set xlBook = xlApp.Workbooks.Open("P:\Commun\Tables temporaires\Stock_libre\Stocks_libres_FORMULES_CALCUL.xls") 'copier la matrice de calcul contenant les formules pour tableau de consolidation xlBook.Application.Run ("copier_tableau_de_consolidation") xlBook.Save 'coller la matrice de calcul dans le fichier fraîchement créé xlBook.Application.Run ("coller_tableau_de_consolidation" ,tx_fichier) 'Code de fermeture xlBook.Save xlApp.Quit Set xlSheet = Nothing Set xlBook = Nothing Set xlApp = Nothing End Sub Code :
Sub copier_tableau_de_consolidation() ' ' copier_tableau_de_consolidation Macro ' Macro enregistrée le 06/10/2008 par Julien Braun ' ' Application.DisplayAlerts = False Range("D1516:AQ1537").Select Selection.Copy End Sub Sub coller_tableau_de_consolidation(fichier As String) ChDir "P:\Commun\Tables temporaires\Stock_libre" Workbooks.Open Filename:=fichier Range("D1516").Select ActiveSheet.Paste End Sub D'avance merci et et bonne journée |
|
|
|
|
|
#2 (permalink) |
![]() |
Bonjour
Regardes du coté de la syntaxe de Application.Run, tu peux passer des arguments. Un exemple avec une fonction : http://excel.developpez.com/faq/index.php?page=VBA#Run Philippe |
|
|
|
|
|
#3 (permalink) | |
|
Membre régulier
![]() Date d'inscription: janvier 2008
Messages: 110
|
Bonjour Philippe,
Merci pour ta réponse! J'ai jeter un coup d'oeil mais je n'arrive tjs pas à passer mon paramètre! Apparemment, Access veut une expression de la forme : Citation:
Or je ne veux pas exécuter une fonction mais bien une procédure! Je sèche!! |
|
|
|
|
|
|
#5 (permalink) |
|
Membre régulier
![]() Date d'inscription: janvier 2008
Messages: 110
|
Alors,
Ca avance gentiment merci! Maintenant, sans les parenthèses, Access semble accepter de lancer ma macro Excel avec mon paramètre... Bon ça passe mais il semblerait que j'aie un problème avec mes macros Excel, elles ne font pas tout à fait ce que je veux mais je vais y travailler avant de crier au secours... en tout cas merci pour la combine des parenthèses je n'y aurait jamais pensé! Alors à toute peut-être |
|
|
|
![]() |
![]() |
||
Passage de paramètre depuis Access vers Excel
|
||
Offres d'
emploi informatique
sur Lesjeudis.com
|
| Outils de la discussion | |
|
|