![]() |
| 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é. | |||||||
|
|||||||
| Microsoft Office Forum d'entraide sur Microsoft Office |
![]() |
|
|
Outils de la discussion |
|
|
#1 (permalink) |
|
Membre régulier
![]() Date d'inscription: mars 2007
Messages: 120
|
Bonjour à tous,
A partir d'une application non office, via un objet OLE, je voudrais accéder aux constantes des application offices. Comme par exemple : xlHAlignCenter pour centrer le texte dans une cellule Excel. Ce que j'ai fait c'est: Code :
This.iOLEExceL.XlHAlign.xlHAlignCenter Est-ce possible? Merci d'avance.
__________________
mamid Dernière modification par AlainTech ; 08/10/2008 à 22h37 Motif: Balises [code], pas [B] |
|
|
|
|
|
#2 (permalink) |
![]() Date d'inscription: février 2006
Localisation: Morlanwelz (Carnières)
Âge: 44
Messages: 10 080
|
Oui, on peut le faire mais il faut déclarer les bibliothèques de chaque application pour les utiliser. On en peut utiliser une constante Excel avec un objet Word.
En Word par exemple : Code :
Sub testXL() Dim xlApp As New Excel.Application Dim xlWb As Excel.WorkBook Dim xlWs As Excel.WorkSheet Set xlWb = xlApp.WorkBooks.Add Set xlWs = xlWb.WorkSheets(1) xlApp.Visible = True xlWs.Cells(1, 1).HorizontalAlignment = xlCenter End Sub
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ? Ne posez pas de question par MP, c'est inutile. Les rubriques Office recrutent. Ma page d'accueil Consultez nos FAQ !! Word ; Access ; Outlook ; Excel ; PowerPoint ; SharePoint Si vous pensez que certains sujets manquent dans la FAQ, aidez nous ! Des images |
|
|
|
|
|
#3 (permalink) |
|
Membre régulier
![]() Date d'inscription: mars 2007
Messages: 120
|
Je pense que dans un objet Office on peut utiliser ces constantes. Mais, moi, mon but c'est d'appeler ces constantes dans un objet non office, en Java ou en PB par exemple en utilisant l'objet OLE.
La solution que j'ai trouvé c'est de redéfinir toutes ces constantes dans une classe définissant un objet ELE Excel. Est-ce la meilleure solution? je ne sais!
__________________
mamid Dernière modification par AlainTech ; 06/05/2008 à 20h31 Motif: Suppression de la citation |
|
|
|
|
|
#4 (permalink) |
![]() Date d'inscription: février 2006
Localisation: Morlanwelz (Carnières)
Âge: 44
Messages: 10 080
|
Je pense que tu devrais poser ta question dans le forum Java.
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ? Ne posez pas de question par MP, c'est inutile. Les rubriques Office recrutent. Ma page d'accueil Consultez nos FAQ !! Word ; Access ; Outlook ; Excel ; PowerPoint ; SharePoint Si vous pensez que certains sujets manquent dans la FAQ, aidez nous ! Des images |
|
|
|
|
|
#5 (permalink) |
![]() ![]() Date d'inscription: juin 2002
Localisation: Argenteuil (95)
Messages: 3 560
|
Si tu référencies la bibliothèques du dois accéder à toutes les constantes ! Elle ont une portée publique, et donc sont forcément visible si tu as instancié ton objet en early binding .
Par contre, si tu le déclare en Objet non typé, parce que tu ne mets pas de référence à la bibliothèque concernée, tu dois effectivement retaper toutes tes constantes à la mano dans ta classe... c'est vrai.
__________________
MVP Office Systems - Access Je ne réponds pas aux questions techniques par MP surtout ne cliquez pas >>là<< je vous aurai prévenu ! Profil LinkedIn <=> Viadeo Pour une formation de qualité : 1formaxion |
|
|
|
|
|
#6 (permalink) |
|
Membre régulier
![]() Date d'inscription: octobre 2002
Localisation: Montpellier
Âge: 27
Messages: 124
|
Bonjour,
Je cherche moi aussi comment accéder aux constantes d'Excel, et comment les utiliser via OLE, en C++. Ce que je cherche à faire est simple, et a été cité plus haut: Code :
xlWs.Cells(1, 1).HorizontalAlignment = xlCenter Code :
#define xlCenter 0xFFFFEFF4 Voilà mon code: Code :
xlWs.OlePropertyGet("Cells",1,1).OlePropertySet("HorizontalAlignment",xlCenter); Ma constante est-elle mal définie, ou m'y prends-je mal pour affecter la valeur à la propriété? Merci d'avance.
__________________
Benz ______________________________________________________________ Software is like sex: it's better when it's free. Linus Torvalds. Le savoir est la seule matière qui s'accroit quand on la partage. Socrate. |
|
|
|
|
|
#7 (permalink) |
|
Membre régulier
![]() Date d'inscription: octobre 2002
Localisation: Montpellier
Âge: 27
Messages: 124
|
Re,
Je viens de trouver tout seul le problème: Je ne sais pas du tout pourquoi, mais il faut initialiser la variable xlCenter à la valeur: Code :
#define xlCenter -4108
Code :
#define xlCenter 0xFFFFEFF4 Peut-être à cause du nombre de bits sur lequel sont codés les int de base... Il faudrait peut -etre rajouter des FFFF... Bref, le -4108 fonctionne (pour moi).
__________________
Benz ______________________________________________________________ Software is like sex: it's better when it's free. Linus Torvalds. Le savoir est la seule matière qui s'accroit quand on la partage. Socrate. |
|
|
|
![]() |
![]() |
||
Accéder aux constantes via un objet OLE
|
||
Offres d'
emploi informatique
sur Lesjeudis.com
|
| Outils de la discussion | |
|
|