Le contrôle n'est pas correctement licencié!!

ZarzisFatma Messages postés 5 Statut Membre -  
thev Messages postés 2011 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Je travaille sur Excel VBA, j' ai réussi d'ajouter DataGrid dans le boite à outils mais j'ai pas arrivé de créer ce DataGrid dans une interface. Un message d'erreur qui s'affiche lors de la création de contrôle DataGrid " Le contrôle n'a pas été créé parce qu'il n'est pas correctement licencié".
SVP, comment je dois faire pour résoudre ce problème.
Merci d'avance,

4 réponses

  1. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
     
    0
    1. ZarzisFatma Messages postés 5 Statut Membre
       
      Merci cs_Le Pivert pour votre réponse,
      Le problème que j'ai déjà msdatgrid.ocx dans mon dossier c:/Windows/sysWOW64 , mais s'affiche toujours le même message d'erreur.
      Je sais pas comment je doit faire pour résoudre ce problème!!!
      0
    2. ZarzisFatma Messages postés 5 Statut Membre
       
      j'ai essayé mais sans succès!!!
      Échec du chargement du module < msdatgrid.ocx>
      Vérifiez que le fichier binaire est stocké à l'emplacement désigné par le chemin d’accès spécifié ou déboguez-le pour rechercher d'éventuels problèmes de fichiers .DLL binaires ou dépendants.
      Le module spécifié est introuvable. !!!
      0
    3. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
       
      On va le faire par code, tu vas chercher l'emplacement de ton OCX et l'enregistrement se fera automatiquement.

      Dim chemin As String
      'On cherche le chemin du fichier
      On Error Resume Next
       Application.FileDialog(msoFileDialogOpen).Show
       chemin = Application.FileDialog(msoFileDialogFilePicker).SelectedItems(1)
       Shell ("regsvr32 " & chemin) 'enregistrer
      ' Shell ("regsvr32 /u " & chemin)'desenregistrer


      Ensuite dans l'éditeur tu iras dans références et tu cocheras ton OCX

      @+
      0
  2. ZarzisFatma Messages postés 5 Statut Membre
     
    un autre message d'erreur !!!
    Le module c:/windows/syswow64/msdatgrid.ocx a été chargé, mais l'appel à DllRegisterServer a échoué avec le code d'erreur 0x80004005.
    0
  3. thev Messages postés 2011 Date d'inscription   Statut Membre Dernière intervention   724
     
    Bonjour,

    A mon avis, ce type de contrôle ne peut pas fonctionner sous Excel VBA . Le mieux est de t'orienter vers une ListBox voire une ListView si tu es sous Excel 32 bits.
    0
    1. ZarzisFatma Messages postés 5 Statut Membre
       
      Bonjour Thev ,
      Merci pour votre réponse, j'ai déjà essayée de travailler avec une ListBox qui permet d'afficher les données enregistrer dans le base de données ACCESS. Le problème que j'ai n'ai pas arrivée de créer les titres de mes colonnes et je n'ai pas réussi de crée plus que 8 colonnes!! j'ai c'est pas quoi le problème exactement voila mon code:

      <Dim db As Database
      Dim rs As Recordset

      Set db = DBEngine.OpenDatabase("C:\Users\Z636237\Desktop\Maintenance1.mdb")
      Set rs = db.OpenRecordset("Select Code_a_barre, Emplacement, Plateau, Position, Affectation, Axalant, Designation, Fournisseur, Quantite, Stock_mini, Date_Heure, Situation From Articles")

      rs.MoveFirst
      i = 0
      With Me.ListBox1
      .ColumnHeads = True
      .ColumnWidths = "100;100;50;50;100;70;200;100;50;50;70;100"
      .ListIndex = -1
      .ListStyle = fmListStyleOption
      .MultiSelect = fmMultiSelectMulti
      .ColumnCount = 12

      Do

      .AddItem
      .List(i, 0) = rs![Code_a_barre]
      .List(i, 1) = rs![Emplacement]
      .List(i, 2) = rs![Plateau]
      .List(i, 3) = rs![Position]
      .List(i, 4) = rs![Affectation]
      .List(i, 5) = rs![Axalant]
      .List(i, 6) = rs![Designation]
      .List(i, 7) = rs![Fournisseur]

      .List(i, 8) = rs![Quantite]


      .List(i, 9) = rs![Stock_mini]
      .List(i, 10) = rs![Date_Heure]
      .List(i, 11) = rs![Situation]
      i = i + 1


      rs.MoveNext
      Loop Until rs.EOF
      End With

      rs.Close
      >
      Merci d'avance
      0
  4. thev Messages postés 2011 Date d'inscription   Statut Membre Dernière intervention   724
     
    Bonjour,

    Le titrage des colonnes ne fonctionne qu'avec l'utilisation de la propriété "RowSource". Si la ListBox est chargée à l'exécution, il faut alors créer un contrôle de type label pour afficher les titres au-dessus de la ListBox.
    0