Re :RESOLU cbxliescpville de dranreb a intégré dans classeur clients?? MERCI DRANREB

Dranreb

XLDnaute Barbatruc
Re : cbxliescpville de dranreb a intégré dans classeur clients??

Oui mais toutes les explications nécessaires figurent dans le module de classe ComboBoxLiés, il suffit de tout lire attentivement.
Dans le CbxLIésGrisant29.xls c'étaient ces deux là :
VB:
CLCPVil.Plage Feuil2.[A2]
VB:
CL.Plage Feuil4.[B2]
Tout ensuite en découle.
 

grisan29

XLDnaute Accro
Re : cbxliescpville de dranreb a intégré dans classeur clients??

bonjour dranreb

j'ai eu toute la semaine pour essayer de décrypter les lignes d'aide du module comboboxliés et je n'ai pas réussi d'autre de bien que renommer les feuilles, et le reste

Pscal
 

Dranreb

XLDnaute Barbatruc
Re : cbxliescpville de dranreb a intégré dans classeur clients??

Bonsoir.

Me questionner sur les lignes de commentaires qui ne paraissent pas claires. Peut être ce qui vous empêche de comprendre tient-il à un certain manque de bases fondamentales comme de savoir en quoi consiste exactement un module de classe et ses règles générales d'utilisation ?
 

grisan29

XLDnaute Accro
Re : cbxliescpville de dranreb a intégré dans classeur clients??

bonsoir dranreb
tu a tout a fait raison quand tu dits
un certain manque de bases fondamentales comme de savoir en quoi consiste exactement un module de classe et ses règles générales d'utilisation ?
Pascal
 

Dranreb

XLDnaute Barbatruc
Re : cbxliescpville de dranreb a intégré dans classeur clients??

Un module de classe est à la fois un modèle d'objet, son plan de construction et la programmation prévue pour travailler avec les exemplaires qui en seront créés. Dans le jargon on appelle ces exemplaires des "instances" pour bien les distinguer de leur type, qui n'est autre que le nom du module de classe. Celui ci devient en effet d'office un type de donnée et on peut donc le préciser derrière As dans une déclaration Dim. Dans la programmation extérieure au module de classe on ne voit de celui ci que les élément précisés avec le mot clé Public, mais, à la différence d'un module ordinaire, on ne peut y accéder qu'à condition de préciser devant, suivi d'un point, le nom d'une instance de cet objet. Ça c'est pour que ça passe à la compilation. Pour que ça passe aussi à l'exécution, il faut en outre qu'une expression de ce type d'objet ait été affectée par un Set à votre variable d'instance. Fort heureusement, l'expression formée du mot clé New suivi du type d'objet (qui est en même temps le nom de son module de classe) forme justement une nouvelle instance créée de ce type d'objet. Pour terminer, raccrochons nous à des notions déjà vues dans l'aide de VBA à propos des objets de bibliothèques fournies, à savoir comment on appelle ces choses visibles de l'extérieur : par définition une procédure Public Sub dans un module de classe s'appelle une méthode, et une variable Public s'y appelle par définition une propriété en lecture/écriture.

Est-ce plus clair, maintenant ?
 
Dernière édition:

grisan29

XLDnaute Accro
Re : cbxliescpville de dranreb a intégré dans classeur clients??

bojour dranreb

en ayant modifié les lignes ou il y feuil2 par son nom et feuil4(client) par wsclient comme ceci
Code:
Private Sub UserForm_Initialize()
Dim I As Integer
Set CLCPVil = New ComboBoxLiés
'CLCPVil.Plage Feuil3.[A2]
CLCPVil.Plage Fcpville.[A2]
CLCPVil.CouleurSympa &H80000005, &HDDFF&, &H80000005, &H80000005
CLCPVil.Add Me.CBcp, "B"
CLCPVil.Add Me.CBville, "C"
ExécutionIntempestive = True
CLCPVil.Actualiser
ExécutionIntempestive = False
Set CL = New ComboBoxLiés
CL.CouleurSympa
CL.Plage WsClient.[B2] ' feuil4=feuille clients dans la base
'CL.Plage Feuil4.[B2] ' feuil4=feuille clients dans la base
CL.Add Me.CBcivil, "C"
CL.Add Me.CBnom, "D"
CL.Add Me.CBprenom, "E"
CL.Actualiser
End Sub
j'ai un bug dans le module comboboxlies qui me dit que le nom PlgUti est un nom ambigu

Code:
Public Sub Plage(ByVal Plg As Range)
Rem. —— Cette méthode permet de spécifier la plage du tableau commun à tous les ComboBox.
'   Plg: La plage en question. Seules les lignes entières en sont retenues. Elle peut aussi être re-spécifiée au Actualiser.
'        Si une seule ligne est spécifiée, elle sera étendue jusqu'à la dernière cellule renseignée de plus qu'une chaîne vide.
' Remarques: En l'absence d'un appel préalable à cette méthode, la méthode Add essayera de déduire la plage de la première
'     spécification de colonne qui sera un Range ou un String.
'   Cette plage sera aussi disponible par la suite, à votre service, en tant que propriété PlgTablo. Il est même vivement recommandé de l'utiliser
'     partout en lieu et place d'une expression Range classique Workbook.Worksheet.Range, puisqu'elle est bien définie là une bonne fois pour toutes.
If Plg.Rows.Count = 1 Then Set Plg = PlgUti(Plg)
Set PlgTablo = Plg.EntireRow.Cells
End Sub

Pascal
 

Dranreb

XLDnaute Barbatruc
Re : cbxliescpville de dranreb a intégré dans classeur clients??

Bonjour.

Voir s'il ne traine pas encore un avatar du module Utilit portant un autre nom, mais avec des procédures de mêmes noms.
 

grisan29

XLDnaute Accro
Re : cbxliescpville de dranreb a intégré dans classeur clients??

bonsoir

méa culpa il était resté (comme dans classeur que j'ai joint) les anciens modules M_ChantierDictionnArbo et M_ChantierUtilit:confused::confused::confused: et cela ne bug plus au même endroit car il ne trouve pas l'usfclient et la touche F8 se promène de modules a modules de classe sans s’arrêter ;je te joints l'apercu du départ de bug puis mets Uclient.show en surbrillance

en fait le code passe en revu toutes les lignes de
Private Sub UserForm_Initialize()
une par une et la où il s'est arrêter le plus longtemps est a cette ligne
Code:
ReDim TIdx(1 To IDern) As Long: For I1 = 1 To IDern: TIdx(I1) = I1 + dI: Next I1
la dernière partie après IDern: qui est dans la sub public
Public Sub Init(ByVal AMini As Long, ByVal BMaxi As Long)
dans le modules de classe "tableindex"

comme je suis sous windows8,1 et office2013 32bits pro, est ce que dans cette partie "system32" peut etre remplacer par "syswow64"
Code:
Sub AjoutRéfScripting()
ActiveWorkbook.VBProject.References.AddFromFile "C:\WINDOWS\System32\scrrun.dll"
End Sub
sans incidence sur le reste du code

Pascal
 

Fichiers joints

Dernière édition:

Dranreb

XLDnaute Barbatruc
Re : cbxliescpville de dranreb a intégré dans classeur clients??

Bonjour.

Je ne peux pas deviner comme ça la cause exacte problème, il me faudrait le fichier. Il semblerait un nom d'Userform inexistant spécifié devant un Show, mais dans ce cas je ne vois pas comment vous entreriez dans un processus d'indexation, où il est par ailleurs tout à fait normal qu'il y ait de fréquents et nombreux appels par une procédure de MDicionnArbo à des bouts de codes de TableIndex. Si on regarde bien, pendant une indexation, les appels aux méthodes de TableIndex sont toujours extraordinairement nombreux et leurs exécutions très rapides, sauf l'initialisation préalable de la table index qui dure un bon petit paquet de millisecondes.

Voir si le débogage ne pourrait pas mieux cerner le problème en cochant "Arrêt dans le module de classe" au lieu de "Arrêt sur les erreurs non gérées", rubrique Récupération d'erreur, onglet Général du sous menu Options… menu Outils de VBE.
 
Dernière édition:

grisan29

XLDnaute Accro
Re : cbxliescpville de dranreb a intégré dans classeur clients??

bonjour dranreb

je te joint le fichier tel que car je ne trouve pas la cause du bug
il n'y a que dans la frame1 de l'usfarticles qui dans le classeur "articles" dans la base, que je n'ai pas changer les noms car la frame qui contient les textbox et labels sont géré par lot

Pascal
 
Dernière édition:

Dranreb

XLDnaute Barbatruc
Re : cbxliescpville de dranreb a intégré dans classeur clients??

Non mais, quel fichier je dois regarder la dedans ? Ne joins qu'un seul fichier S.V.P.
 

grisan29

XLDnaute Accro
Re : cbxliescpville de dranreb a intégré dans classeur clients??

re
si je te joint que le classeur client il manquera la feuille qui est dans la base, et les autres feuilles ou classeur c'est pareil
bon le classeur joint est a décompresser et mettre sous c: et changer les chemins dans le module M_constantes du classeur "devisfacture 1.12"

une fois décompresser ouvrir devisfacture1.12 et derrière "bouton" il y a un usf qui a le bouton clients en haut

Pascal
 

Dranreb

XLDnaute Barbatruc
Re : cbxliescpville de dranreb a intégré dans classeur clients??

Non. Je ne vais pas m'installer une usine à gaz avec 36 classeurs. Hors de question.
 

grisan29

XLDnaute Accro
Re : cbxliescpville de dranreb a intégré dans classeur clients??

bon voici le classeur devisfacture
quelle solution aurai tu si ce devisfacture est une usine a gaz,

moi qui le trouve plus performant que celui que j'essayais de faire et surtout moins usine a gaz
 

Fichiers joints

Dernière édition:

Dranreb

XLDnaute Barbatruc
Re : cbxliescpville de dranreb a intégré dans classeur clients??

J'ai le message de Microsoft Forms : Impossible de charger le objet car il n'est pas disponible sur cette machine. Et bien sûr 4 références MANQUANT, et probablement de grande places vides dans certains Userform, je n'ai pas vérifié, pour des ListView.
J'ai quand même vu qu'il y avait un Uclient. Sa tentative d'affichage provoque une erreur sur CL.Plage WsClient.[B2] parce que la variable Worksheet WsClient n'est pas initialisé. La méthode SetClientWs de votre userform Uclient, qui serait capable de l'initialiser, n'est apparemment appelée nulle part dans votre projet VBA. Et je ne sais pas comment vous allez faire en Excel2013, car il n'y a pas de feuille de base clients dans ce classeur.
 

grisan29

XLDnaute Accro
Re : cbxliescpville de dranreb a intégré dans classeur clients??

re
c'est ce que j'ai dit plus haut que les feuilles sont sous c: et dépendantes de celui que je viens de joindre, j'ai enlevé l'autre car tu n'en voulais pas
je te joints la feuille clients
Pascal
 
Dernière édition:

Dranreb

XLDnaute Barbatruc
Re : cbxliescpville de dranreb a intégré dans classeur clients??

Eh bien mettez la avec dans le classeur !!! Mettrez tout ensemble dans un seul classeur. Je ne pourrai pas vous aider à faire autrement, surtout en Excel 2013.
 

grisan29

XLDnaute Accro
Re : cbxliescpville de dranreb a intégré dans classeur clients??

re
ben je vais te joindre un ensemble si c'est ce que tu veux

pascal
 

Fichiers joints

Dernière édition:

Dranreb

XLDnaute Barbatruc
Re : cbxliescpville de dranreb a intégré dans classeur clients??

Toujours pas de feuille client dans le DevisFactures…
 

grisan29

XLDnaute Accro
Re : cbxliescpville de dranreb a intégré dans classeur clients??

re
elle est dans la base et c'est tout ce qu'il reste dans la base, autrement tu préfèrerait des onglets cote a cote qui ne réflète pas la réalité du fichier
 

Discussions similaires


Haut Bas