XL 2013 Mon fichier bug

Estysh

XLDnaute Nouveau
Bonjour !
Je ne suis pas une pro du vba.
J'ai un fichier qui me permet de générer des factures, reçus, etc.
J'ai un userform qui est rempli pour générer les reçus. Lorsque je lance l'userform, j'ai une erreur lorsque je clique dans le combobox pour renseigner le nom du client (la rowsource est une zone nommée de mon fichier).
L'erreur est ERREUR D'AUTOMATION L'OBJET INVOQUÉ S'EST DÉCONNECTÉ DE SES CLIENTS.
Seul le bouton "Fin" est activé le bouton "Débogage " est désactivé.

Quand je clique sur fin, après tous mes combobox sont vides; les combobox de tous les userforms de mon fichier.
 
Solution
Re

La précédente modif, c'était pour l'Userform: FrmCommande
Donc pour FrmRecu
Voici le code à ajouter
VB:
Private Sub UserForm_Initialize()
CboNomClient.List = [Nom_Client].Value
End Sub
NB: Toujours en prenant soin de supprimer le contenu de la propriété RowSource au préalable.

JBARBE

XLDnaute Barbatruc
Re,
Voici ce que j'obtiens pour ouvrir le fichier :
et le fichier ne s'est pas ouvert cette fois ci !
Joint.jpg
 

Estysh

XLDnaute Nouveau
Re,
Bizarrement comme tout à l'heure il a besoin que j'ouvre un autre fichier excel pour qu'il s'ouvre !
Il a vraiment un problème ce fichier !
Re,
Bizarrement comme tout à l'heure il a besoin que j'ouvre un autre fichier excel pour qu'il s'ouvre !
Il a vraiment un problème ce fichier !
Une idée de ce que ça peut vouloir dire?
 

JBARBE

XLDnaute Barbatruc
Re,
A ce que je vois, c'est une véritable usine à gaz ( des modules et des boites de dialogues énormément ) !
Certes, ça représente beaucoup de travail, mais dans un cas semblable un dysfonctionnement est peut-être à craindre !
Bonne soirée
 

Staple1600

XLDnaute Barbatruc
Re

•>Estych
Donc si c'est l'userform nommé:FrmCommande
1) Efface le contenu dans la propriété RowSource
(fenêtre Propriétés dans VBE)
2) Remplace le code le l'initialise par celui-ci
VB:
Private Sub UserForm_Initialize()
TxtNuméro.Value = Format(Sheets("Bon de commande").Range("D10") + 1, 0)
BtnEnvoyer.Enabled = False: TxtDate = CDate(Date): LblMatière.Visible = False
LblNomClient.Visible = False: LblPrescription.Visible = False
LblFournisseur.Visible = False: LblTypeVerres.Visible = False
CboNomClient.Visible = False: CboNomClient.List = [Nom_Client].Value
TxtOD.Visible = False: TxtOG.Visible = False
TxtFournisseur.Visible = False: TxtTypeVerre.Visible = False
TxtVerres.Visible = False: TxtMatière.Visible = False
Sheets("Bon de commande").Range("A7,D9,A13:B15,D13:D15,C13:C18,C21") = ""
End Sub
NB: Pour faire ces modifs, ouvre ton classeur sans activer les macros (cela évitera le plantage à l'ouverture)
 

JBARBE

XLDnaute Barbatruc
Re,
Ceci pose également problème
vbok.jpg

que je ne comprends pas (vbOkOnly+vbinformation )
Moi je mettrais par exemple pour vbOkOnly :
vReponse=MsgBox("Voulez-vous continuer?",vbOkCancel+ vbInformation)
if vReponse=vbYes then
XXXXXXXXXXXXXXXX
end if

A moins que je me trompe ! Dans ce cas au lieu de Msg il faut MsgBox
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re

JBARBE
C'est une façon de paramétrer un MsgBox
Les syntaxtes ci-dessous produisent le même résultat
VB:
End Sub
Sub Test()
Style = vbOKOnly + vbInformation
Title = "Objectif de la journée"
Msg = "Le chiffre d'affaires à réaliser aujourd'hui est: " & Format(1600, "# ### ### FCFA")
Answer = MsgBox(Msg, Style, Title)
End Sub
Sub Test_light()
Msg = "Le chiffre d'affaires à réaliser aujourd'hui est: " & Format(1600, "# ### ### FCFA")
Answer = MsgBox(Msg, 64, "Objectif de la journée")
End Sub
 

Statistiques des forums

Discussions
312 215
Messages
2 086 314
Membres
103 176
dernier inscrit
jean.yvesjean.yves