Bonjour,
Je cherche un logon script qui me donnerait la langue et la version de
Microsoft office installé sur les ordinateurs.
L'info serait sauvée sur une lecteur réseau.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jacques93
Bonjour BL,
Bonjour, Je cherche un logon script qui me donnerait la langue et la version de Microsoft office installé sur les ordinateurs. L'info serait sauvée sur une lecteur réseau.
Avez-vous des idées ? merci !
On peut avoir des composants d'office de différentes versions sur une machine (Word 2000, Excel 2003 par exemple). Mais par exemple pour Excel et Word en VBS :
Dim Excel, Word
Set Excel = CreateObject ("Excel.Application") MsgBox "Excel Version : " & Excel.Version & vbcrlf & _ Excel.LanguageSettings.LanguageID(2)
Set Word = CreateObject ("Word.Application") MsgBox "Word Version : " & Word.Version & vbcrlf & _ Word.LanguageSettings.LanguageID(2) Set Excel = Nothing
Excel.LanguageSettings.LanguageID(2) renvoie un LCID dont tu peut trouver la liste ici :
Bonjour,
Je cherche un logon script qui me donnerait la langue et la version de
Microsoft office installé sur les ordinateurs.
L'info serait sauvée sur une lecteur réseau.
Avez-vous des idées ? merci !
On peut avoir des composants d'office de différentes versions sur une
machine (Word 2000, Excel 2003 par exemple). Mais par exemple pour Excel
et Word en VBS :
Dim Excel, Word
Set Excel = CreateObject ("Excel.Application")
MsgBox "Excel Version : " & Excel.Version & vbcrlf & _
Excel.LanguageSettings.LanguageID(2)
Set Word = CreateObject ("Word.Application")
MsgBox "Word Version : " & Word.Version & vbcrlf & _
Word.LanguageSettings.LanguageID(2)
Set Excel = Nothing
Excel.LanguageSettings.LanguageID(2) renvoie un LCID dont tu peut
trouver la liste ici :
Bonjour, Je cherche un logon script qui me donnerait la langue et la version de Microsoft office installé sur les ordinateurs. L'info serait sauvée sur une lecteur réseau.
Avez-vous des idées ? merci !
On peut avoir des composants d'office de différentes versions sur une machine (Word 2000, Excel 2003 par exemple). Mais par exemple pour Excel et Word en VBS :
Dim Excel, Word
Set Excel = CreateObject ("Excel.Application") MsgBox "Excel Version : " & Excel.Version & vbcrlf & _ Excel.LanguageSettings.LanguageID(2)
Set Word = CreateObject ("Word.Application") MsgBox "Word Version : " & Word.Version & vbcrlf & _ Word.LanguageSettings.LanguageID(2) Set Excel = Nothing
Excel.LanguageSettings.LanguageID(2) renvoie un LCID dont tu peut trouver la liste ici :
Au passage, merci. Car, si je connaissais la fonction LanguageSettings.LanguageID(2), je n'avais pas la liste des constantes.
Et, d'ailleurs, j'aimerais bien trouver les listes des valeurs des constantes, telles que wdDoNotSaveChanges, wdCharacter, wdCell, wdLine, wdAlignRight, etc.
Cela m'éviterait d'afficher les valeurs, une à une, dans un MessageBox...
Merci d'avance
@-salutations
Michel Claveau
Bonsoir !
Au passage, merci. Car, si je connaissais la fonction
LanguageSettings.LanguageID(2), je n'avais pas la liste des constantes.
Et, d'ailleurs, j'aimerais bien trouver les listes des valeurs des
constantes, telles que wdDoNotSaveChanges, wdCharacter, wdCell, wdLine,
wdAlignRight, etc.
Cela m'éviterait d'afficher les valeurs, une à une, dans un MessageBox...
Au passage, merci. Car, si je connaissais la fonction LanguageSettings.LanguageID(2), je n'avais pas la liste des constantes.
Et, d'ailleurs, j'aimerais bien trouver les listes des valeurs des constantes, telles que wdDoNotSaveChanges, wdCharacter, wdCell, wdLine, wdAlignRight, etc.
Cela m'éviterait d'afficher les valeurs, une à une, dans un MessageBox...
Merci d'avance
@-salutations
Michel Claveau
Jacques93
Bonsoir Michel Claveau,
Bonsoir !
Au passage, merci. Car, si je connaissais la fonction LanguageSettings.LanguageID(2), je n'avais pas la liste des constantes.
Et, d'ailleurs, j'aimerais bien trouver les listes des valeurs des constantes, telles que wdDoNotSaveChanges, wdCharacter, wdCell, wdLine, wdAlignRight, etc.
Cela m'éviterait d'afficher les valeurs, une à une, dans un MessageBox...
Les valeurs retournées par LanguageSettings.LanguageID(2) sont liées à Windows, et publiées sur MSDN, cela concerne Windows ,par contre la constante wdDoNotSaveChanges est interne à Word.
Quand je travaille avec Office ou VB6 (désolé...), il suffit de déclarer une référence au produit en question, Word, Excel, Outlook, etc... et via l'explorateur d'objet <F2> dans VBA, on a accès aux méthodes, propriétés, constantes (et donc à leur valeur) de l'objet en question. Par exemple :
http://cjoint.com/?kpxCSbUj7U
Dans les scripts, dont je suis loin d'être spécialiste, il n'y a pas de 'typage' des objets, et donc pas accès à ces infos.
Je ne connais pas de sites référençant ces informations, même sur MSDN, je peux me tromper, mais il me semble que sans le produit : pas d'infos :-(
Bonne fin de Week-End
-- Cordialement,
Jacques.
Bonsoir Michel Claveau,
Bonsoir !
Au passage, merci. Car, si je connaissais la fonction
LanguageSettings.LanguageID(2), je n'avais pas la liste des constantes.
Et, d'ailleurs, j'aimerais bien trouver les listes des valeurs des
constantes, telles que wdDoNotSaveChanges, wdCharacter, wdCell, wdLine,
wdAlignRight, etc.
Cela m'éviterait d'afficher les valeurs, une à une, dans un MessageBox...
Les valeurs retournées par LanguageSettings.LanguageID(2) sont liées à
Windows, et publiées sur MSDN, cela concerne Windows ,par contre la
constante wdDoNotSaveChanges est interne à Word.
Quand je travaille avec Office ou VB6 (désolé...), il suffit de déclarer
une référence au produit en question, Word, Excel, Outlook, etc...
et via l'explorateur d'objet <F2> dans VBA, on a accès aux méthodes,
propriétés, constantes (et donc à leur valeur) de l'objet en question.
Par exemple :
http://cjoint.com/?kpxCSbUj7U
Dans les scripts, dont je suis loin d'être spécialiste, il n'y a pas de
'typage' des objets, et donc pas accès à ces infos.
Je ne connais pas de sites référençant ces informations, même sur MSDN,
je peux me tromper, mais il me semble que sans le produit : pas d'infos :-(
Au passage, merci. Car, si je connaissais la fonction LanguageSettings.LanguageID(2), je n'avais pas la liste des constantes.
Et, d'ailleurs, j'aimerais bien trouver les listes des valeurs des constantes, telles que wdDoNotSaveChanges, wdCharacter, wdCell, wdLine, wdAlignRight, etc.
Cela m'éviterait d'afficher les valeurs, une à une, dans un MessageBox...
Les valeurs retournées par LanguageSettings.LanguageID(2) sont liées à Windows, et publiées sur MSDN, cela concerne Windows ,par contre la constante wdDoNotSaveChanges est interne à Word.
Quand je travaille avec Office ou VB6 (désolé...), il suffit de déclarer une référence au produit en question, Word, Excel, Outlook, etc... et via l'explorateur d'objet <F2> dans VBA, on a accès aux méthodes, propriétés, constantes (et donc à leur valeur) de l'objet en question. Par exemple :
http://cjoint.com/?kpxCSbUj7U
Dans les scripts, dont je suis loin d'être spécialiste, il n'y a pas de 'typage' des objets, et donc pas accès à ces infos.
Je ne connais pas de sites référençant ces informations, même sur MSDN, je peux me tromper, mais il me semble que sans le produit : pas d'infos :-(
Bonne fin de Week-End
-- Cordialement,
Jacques.
Do Re Mi chel La Si Do
Bonsoir !
OK, merci. J'ai bien trouvé l'info dans mon Office XP. Mais, pour chaque constante, je suis obligé de lire la valeur dans la barre d'état, et de copier/coller le nom ; tout ça élément par élément.
Dommage que je n'ai pas trouvé de liste.
Enfin, c'est déjà mieux que mon système par macro...
Encore merci.
@-salutations
Michel Claveau
Bonsoir !
OK, merci. J'ai bien trouvé l'info dans mon Office XP. Mais, pour chaque
constante, je suis obligé de lire la valeur dans la barre d'état, et de
copier/coller le nom ; tout ça élément par élément.
Dommage que je n'ai pas trouvé de liste.
Enfin, c'est déjà mieux que mon système par macro...
OK, merci. J'ai bien trouvé l'info dans mon Office XP. Mais, pour chaque constante, je suis obligé de lire la valeur dans la barre d'état, et de copier/coller le nom ; tout ça élément par élément.
Dommage que je n'ai pas trouvé de liste.
Enfin, c'est déjà mieux que mon système par macro...
Encore merci.
@-salutations
Michel Claveau
Alain CROS
Bonjour.
Essayer ceci dans Excel. Adapter les répertoires.
Alain CROS
Sub AfficheConst() Dim i&, X As Object, Y As Object, R As Object, mbr As Object Set X = CreateObject("TLI.TLIApplication") ' Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Excel.exe") ' Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Msacc.olb") ' Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Msoutl.olb") ' Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Msppt.olb") Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Msword.olb") ' Set Y = X.TypeLibInfoFromFile("C:Program FilesVisioVisLib32.dll") Cells.ClearContents For Each R In Y.Constants For Each mbr In R.Members i = i + 1 Cells(i, 1) = mbr.Name Cells(i, 2) = mbr.Value Next mbr Next R Set Y = Nothing Set X = Nothing Set R = Nothing Set mbr = Nothing Columns("A:A").Columns.AutoFit End Sub
Bonjour.
Essayer ceci dans Excel.
Adapter les répertoires.
Alain CROS
Sub AfficheConst()
Dim i&, X As Object, Y As Object, R As Object, mbr As Object
Set X = CreateObject("TLI.TLIApplication")
' Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Excel.exe")
' Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Msacc.olb")
' Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Msoutl.olb")
' Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Msppt.olb")
Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Msword.olb")
' Set Y = X.TypeLibInfoFromFile("C:Program FilesVisioVisLib32.dll")
Cells.ClearContents
For Each R In Y.Constants
For Each mbr In R.Members
i = i + 1
Cells(i, 1) = mbr.Name
Cells(i, 2) = mbr.Value
Next mbr
Next R
Set Y = Nothing
Set X = Nothing
Set R = Nothing
Set mbr = Nothing
Columns("A:A").Columns.AutoFit
End Sub
Sub AfficheConst() Dim i&, X As Object, Y As Object, R As Object, mbr As Object Set X = CreateObject("TLI.TLIApplication") ' Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Excel.exe") ' Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Msacc.olb") ' Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Msoutl.olb") ' Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Msppt.olb") Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Msword.olb") ' Set Y = X.TypeLibInfoFromFile("C:Program FilesVisioVisLib32.dll") Cells.ClearContents For Each R In Y.Constants For Each mbr In R.Members i = i + 1 Cells(i, 1) = mbr.Name Cells(i, 2) = mbr.Value Next mbr Next R Set Y = Nothing Set X = Nothing Set R = Nothing Set mbr = Nothing Columns("A:A").Columns.AutoFit End Sub
Jacques93
Bonjour à tous,
Bonjour.
Essayer ceci dans Excel. Adapter les répertoires.
Alain CROS
Sub AfficheConst() Dim i&, X As Object, Y As Object, R As Object, mbr As Object Set X = CreateObject("TLI.TLIApplication") ' Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Excel.exe") ' Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Msacc.olb") ' Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Msoutl.olb") ' Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Msppt.olb") Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Msword.olb") ' Set Y = X.TypeLibInfoFromFile("C:Program FilesVisioVisLib32.dll") Cells.ClearContents For Each R In Y.Constants For Each mbr In R.Members i = i + 1 Cells(i, 1) = mbr.Name Cells(i, 2) = mbr.Value Next mbr Next R Set Y = Nothing Set X = Nothing Set R = Nothing Set mbr = Nothing Columns("A:A").Columns.AutoFit End Sub
Pas mal aussi, chez Frederic Sigonneau, liste des constantes triées par catégorie :
Sub AfficheConst()
Dim i&, X As Object, Y As Object, R As Object, mbr As Object
Set X = CreateObject("TLI.TLIApplication")
' Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Excel.exe")
' Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Msacc.olb")
' Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Msoutl.olb")
' Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Msppt.olb")
Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Msword.olb")
' Set Y = X.TypeLibInfoFromFile("C:Program FilesVisioVisLib32.dll")
Cells.ClearContents
For Each R In Y.Constants
For Each mbr In R.Members
i = i + 1
Cells(i, 1) = mbr.Name
Cells(i, 2) = mbr.Value
Next mbr
Next R
Set Y = Nothing
Set X = Nothing
Set R = Nothing
Set mbr = Nothing
Columns("A:A").Columns.AutoFit
End Sub
Pas mal aussi, chez Frederic Sigonneau, liste des constantes triées par
catégorie :
Sub AfficheConst() Dim i&, X As Object, Y As Object, R As Object, mbr As Object Set X = CreateObject("TLI.TLIApplication") ' Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Excel.exe") ' Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Msacc.olb") ' Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Msoutl.olb") ' Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Msppt.olb") Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft Office2000Office10Msword.olb") ' Set Y = X.TypeLibInfoFromFile("C:Program FilesVisioVisLib32.dll") Cells.ClearContents For Each R In Y.Constants For Each mbr In R.Members i = i + 1 Cells(i, 1) = mbr.Name Cells(i, 2) = mbr.Value Next mbr Next R Set Y = Nothing Set X = Nothing Set R = Nothing Set mbr = Nothing Columns("A:A").Columns.AutoFit End Sub
Pas mal aussi, chez Frederic Sigonneau, liste des constantes triées par catégorie :
http://lambdasoft.dk/files/TlbInf32.exe (le lien chez Microsoft impose d'avoir VStudio)
Après l'avoir installé, en m'inspirant de vos deux exemples, j'ai pu pondre (Cot ! Cot! Cot !) la macro word ci-dessous.
A l'exécution, elle crée un document de 60 pages, facile à copier/coller.
Merci à tous les deux.
Michel Claveau
Sub Macro2() ' liste (lecture) des constantes MsWord.olb ' nécessite TLI.TLIApplication (Tlbinf32.dll) ' Macro inspirée des exemples de Jacques Alain Cros 93, et Cie ' Dim i&, X As Object, Y As Object, R As Object, mbr As Object Set X = CreateObject("TLI.TLIApplication") Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft OfficeOffice10Msword.olb")
For Each R In Y.Constants For Each mbr In R.Members i = i + 1 Selection.TypeText Text:=mbr.Name Selection.TypeText Text:="=" Selection.TypeText Text:=mbr.Value Selection.TypeParagraph Next mbr Selection.TypeParagraph Next R Set Y = Nothing Set X = Nothing Set R = Nothing Set mbr = Nothing End Sub
Bonsoir, Alain Cros & Jacques93 !
Après avoir téléchargé Tlbinf32.dll, là :
http://lambdasoft.dk/files/TlbInf32.exe
(le lien chez Microsoft impose d'avoir VStudio)
Après l'avoir installé, en m'inspirant de vos deux exemples, j'ai pu pondre
(Cot ! Cot! Cot !) la macro word ci-dessous.
A l'exécution, elle crée un document de 60 pages, facile à copier/coller.
Merci à tous les deux.
Michel Claveau
Sub Macro2()
' liste (lecture) des constantes MsWord.olb
' nécessite TLI.TLIApplication (Tlbinf32.dll)
' Macro inspirée des exemples de Jacques Alain Cros 93, et Cie
'
Dim i&, X As Object, Y As Object, R As Object, mbr As Object
Set X = CreateObject("TLI.TLIApplication")
Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft
OfficeOffice10Msword.olb")
For Each R In Y.Constants
For Each mbr In R.Members
i = i + 1
Selection.TypeText Text:=mbr.Name
Selection.TypeText Text:="="
Selection.TypeText Text:=mbr.Value
Selection.TypeParagraph
Next mbr
Selection.TypeParagraph
Next R
Set Y = Nothing
Set X = Nothing
Set R = Nothing
Set mbr = Nothing
End Sub
http://lambdasoft.dk/files/TlbInf32.exe (le lien chez Microsoft impose d'avoir VStudio)
Après l'avoir installé, en m'inspirant de vos deux exemples, j'ai pu pondre (Cot ! Cot! Cot !) la macro word ci-dessous.
A l'exécution, elle crée un document de 60 pages, facile à copier/coller.
Merci à tous les deux.
Michel Claveau
Sub Macro2() ' liste (lecture) des constantes MsWord.olb ' nécessite TLI.TLIApplication (Tlbinf32.dll) ' Macro inspirée des exemples de Jacques Alain Cros 93, et Cie ' Dim i&, X As Object, Y As Object, R As Object, mbr As Object Set X = CreateObject("TLI.TLIApplication") Set Y = X.TypeLibInfoFromFile("C:Program FilesMicrosoft OfficeOffice10Msword.olb")
For Each R In Y.Constants For Each mbr In R.Members i = i + 1 Selection.TypeText Text:=mbr.Name Selection.TypeText Text:="=" Selection.TypeText Text:=mbr.Value Selection.TypeParagraph Next mbr Selection.TypeParagraph Next R Set Y = Nothing Set X = Nothing Set R = Nothing Set mbr = Nothing End Sub
Do Re Mi chel La Si Do
Re
Maintenant que j'ai une solution, je viens de tomber sur ce lien : http://www.p6c.com/cgi-bin/p6c/buildfaqndxx.pl?CommonTypelibs Mais, je n'en ai plus besoin....
@-salutations
Michel Claveau
Re
Maintenant que j'ai une solution, je viens de tomber sur ce lien :
http://www.p6c.com/cgi-bin/p6c/buildfaqndxx.pl?CommonTypelibs
Mais, je n'en ai plus besoin....
Maintenant que j'ai une solution, je viens de tomber sur ce lien : http://www.p6c.com/cgi-bin/p6c/buildfaqndxx.pl?CommonTypelibs Mais, je n'en ai plus besoin....