Sélectionné un référence depuis un module
#1
Régulier XLPages

Inscription: 08/12/2008

Messages: 55

Système d'exploitation:
PC
Version Excel utilisée:
2003
Posté le : 20-03-2010 17h15
Bonjour a tous
J'aurais voulue savoir , suite au discution au sujet des Userform , Guy ma indiquer un site "Deleting All VBA Code In A Project du site de Chip Pearson." et aprés sa derniére solution me propose de mettre la référence "Visual Basic for applications Extensibility 5.3" .
J'ai essayer avec les renseignement du site, de sélectionné la référence cité ci-dessus depuis le code VBA , j'aurais désirais savoir si cela est possible ?
J'ai vue qu'il faut obtenir une suite de chiffre "GUID" , mes comment trouver la valeur correspondant a la référence concerné?.

Donc si cela est possible j'aimerais sélectionné la référence au lance du programme , en pensant que la référence n'est peut être pas en fonction a la mise en place du programme est son lancement.

Il faudrais peut être avoir aussi un contrôle au cas ou il serait déjà installe.

J'y suis dessus depuis se matin mes je bloque avec la valeur et comment sélectionne la référence

J'espére avoir été clair,.

Bonne fin de journée a tous
Hors Ligne
Rapport   Haut 

Re: Sélectionné un référence depuis un module
#2
Webmestre

Inscription: 18/05/2006
De Saône-et-Loire (71)

Messages: 1539

Système d'exploitation:
PC
Version Excel utilisée:
97, 2000, 2002, 2003, 2007, 2010, 2013, 2016 et 365
Posté le : 20-03-2010 18h04
Bonsoir Beatbles, le Forum,

A mon avis, tu te fatigues pour pour rien Beatbles...

Les références sont attachées au projet VBA et donc à ton classeur. Si tu ouvres ton classeur sur une autre machine, Excel aura fait son travail et ta référence sera toujours là ! Sauf si la bibliothèque (dll) correspondante est absente de la machine bien sûr. Mais tu n'as normalement pas à t'inquiéter pour celle-ci ("Visual Basic for applications Extensibility 5.3"), elle est par défaut sur tous les PC exploitant VBA pour Office.

Cordialement,

Didier_mDF
Image redimensionnée
Le Webmaster

La réponse vous satisfait ? Merci de revenir solder le sujet en [résolu], voir ce lien
Hors Ligne
Rapport   Haut 

Re: Sélectionné un référence depuis un module
#3
Accro XLPages

Inscription: 09/01/2008
De Montréal, Québec

Messages: 463

Système d'exploitation:
PC
Version Excel utilisée:
97 à 2016
Posté le : 20-03-2010 18h20
Bonjour beatbles,

Effectivement Didier a tout à fait raison "Tu te fatigues pour rien" et son message est à relire attentivement mais néanmoins un petit classeur pour rien à tout hasard.

L'exemple donné au site de Chip Pearson

ThisWorkbook.VBProject.References.AddFromGuid _
        GUID:="{0002E157-0000-0000-C000-000000000046}", _
        Major:=5, Minor:=3
 
Installe justement Microsoft Visual Basic for Applications Extensibility 5.3.

La question de savoir comment récupérer un GUID à partir d'une OLB, TLB, DLL ou autres trucs dépasse largement le présent exercice, cependant on peut récupérer les informations des références installées dans le projet en cours avec le classeur Références et GUID.xls en pièce jointe.

Si tu installes d'autres références à la volée avec le menu Outils/Références... et que tu fais rouler à nouveau la procédure ListeDesReferencesActives()

Sub ListeDesReferencesActives()
 
  Dim Ref As Reference
  Dim Texte As String
  Dim Compteur As Long
 
  ' Ligne où doit commencer l'affichage
  Compteur = 2
 
  ' Évite les avertissements "Voulez-vous vraiment modifier le contenu des cellules..."
  Application.DisplayAlerts = False
 
  ' Insription des en-têtes de colonnes
  Feuil1.Range("A1") = "GUID;Description;Chemin"
  Feuil1.Range("A1").TextToColumns DataType:=xlDelimited, textqualifier:=xlTextQualifierNone, consecutivedelimiter:=True, semicolon:=True

  ' Parcout de toutes les références inscrites au projet en cours
  For Each Ref In ThisWorkbook.VBProject.References
 
    ' Chaîne à redistribuer dans les cellules
    Texte = Ref.GUID & ";" & Ref.Description & ";" & Ref.FullPath
   
    With Feuil1.Cells(Compteur, 1)
     
      ' Chargement de la chaîne à distribuer
      .Value = Texte
      ' Distribution
      .TextToColumns DataType:=xlDelimited, textqualifier:=xlTextQualifierNone, consecutivedelimiter:=True, semicolon:=True
   
    End With
     
    ' Passage à la ligne suivante
    Compteur = Compteur + 1
  Next

  ' Rétablissement des messages d'alerte
  Application.DisplayAlerts = True
 
End Sub
 
tu pourras récupérer le GUID, la description et le chemin complet du fichier associés à chaque référence.

Amuse-toi bien et très cordialement,

Guy




Pièce jointe:
xls Références et GUID.xls   [ Taille: 28.50 Ko - Téléchargements: 437 ]

Hors Ligne
Rapport   Haut 

Re: Sélectionné un référence depuis un module
#4
Régulier XLPages

Inscription: 08/12/2008

Messages: 55

Système d'exploitation:
PC
Version Excel utilisée:
2003
Posté le : 25-03-2010 12h41

Bonjour a myDeartFriend et Guy

 

Si j’ai poser la question c’est parce que, quand j’ai eu mis le bout de code pour l’UseForm est que j’ai eu sélectionner « Microsoft Visual Basic for Applications Extensibility 5.3. », après l’avoir lancer je retourner a la copie que j’avais fait mes la référence n’était plus la et cela mes arriver 2 ou 3 fois, ensuite elle est reste cocher.

Aussi j’ai crue que si j’installe mon programme il y aurais erreur par manque de la référence.

 Par contre je te suis très reconnaissant pour le programme Références et GUID.xls

Je pense qu’il me sera très utile

 

Je tient à vous remercier et m’excuse de n’avoir pu revenir plus tôt

 

Très cordialement a vous deux

 

Beatbles

Hors Ligne
Rapport   Haut 


Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Qui consulte actuellement ce sujet ?   1 Utilisateur(s) anonymes