Compte bancaire (problèmes de codification pour formulaire de saisie)

Webperegrino

XLDnaute Impliqué
Supporter XLD
Bonsoir Le Forum,

Je suis sur le point de finaliser une application que j’utilise déjà et que j’ai cherché à perfectionner pour mes besoins.
Vous la trouverez en pièce jointe car elle peut intéresser d’autres utilisateurs sur ce site.
Voici le lien sur www.cijint.fr :

Cijoint.fr - Service gratuit de dépôt de fichiers

Bon usage à ceux que ça intéresse ! Toutefois...

Je continue à m'y « faire les dents » en codification VBA…
et je ne peux plus avancer depuis plusieurs jours de recherche des erreurs.
Accepteriez-vous de m’aider ?
Merci à l’avance.

A ) Synthèse de fonctionnement :

A partir de votre site, j'ai donc eu la possibilité de découvrir l’application de Monsieur Michel JOST, « Comptes MJ 2007 » et l’ai associée avec l’application proposée sur ExcelDownload par Monsieur Joseph CANCEL.

C'est cette dernière que j’ai retenue et m'a permis de présenter ma gestion de compte bancaire comme je le faisais jusqu'ici en feuille excel 'très sobre'.

J’ai fait un report de la codification, j’ai réalisé un calendrier (Merci Hasco et Gael, ainsi que Pierrot 93 tout dernièrement).

B ) Mes erreurs que n'arrive pas à corriger pour utiliser le formulaire de saisie

J'ai mal codifié l’affaire à l’utilisation d’un tout dernier Formulaire unique : la liste de mes soucis se trouve en feuille « Mes_Soucis ». Je manque d'expérience en codification VBA... Un petit Help serait le bienvenu.

Cette application peut donc fonctionner de deux façons :
1 – La première fonctionne actuellement à merveille (sans le formulaire unique)
La feuille « Compte » est en liaison avec la feuille « Liste »
Clic droit en colonnes A, B, D, E, G, H
Clic gauche en C (pour choix de date dans un calendrier)
F et I en saisie libre
Clic droit sur la ligne 3 : les fonctions TRI, ARCHIVAGE, PERIODICITE fonctionnent bien

2 – Les problèmes surgissent dans la deuxième façon d'utilisation, avec le formulaire unique. C’est dommage : je commençais à être satisfait de mon travail !
Patatras !
La feuille « Compte » est en relation avec la feuille « ListeB ».
Ici, j’ai voulu appliquer les macros proposées par Monsieur Michel JOST dans son application « Comptes MJ 2007 » que j’ai tenté d’adapter.
Malheureusement des ListBox restent désespérément vierges de données à lister à partir de ListeB.

Je crains aussi que la ligne 4 de la feuille "Compte" soit « écrasée » lors de l’utilisation de ce formulaire alors que l’enregistrement des valeurs devrait se porter :
- sur la première ligne disponible (en réf. au remplissage de la colonne D, et c’est pour cela que la ligne 4 doit ne pas être ‘écrasée' -si je trie, la ligne 4 se remplit et il ne faut pas que l'utilisation du formulaire (bouton saisie en AB1 de "Compte") n'écrase pas cette ligne-
- ou la dernière ligne disponible (D :D) en recherche à partir du bas de la feuille « Compte »
Mes soucis sont énumérés en feuille « Mes_Soucis » placée dans le fichier joint, pour de plus amples informations.

Merci à ceux qui voudront bien me permettre d'avancer en VBA codification.
Bonne nuit
Webperegrino
 
G

Guest

Guest
Re : Compte bancaire (problèmes de codification pour formulaire de saisie)

Bonjour,

Pour le calendrier et l'affichage au bon endroit:

Dans module1 déclarer une variable publique:
Code:
Public MonObjetDate As Object

Dans procédure affdate modifications en rouge:
Code:
Sub affdate()
 If Len(UserForm3.ActiveControl.Name) = 14 Then
  jour1 = Right(UserForm3.ActiveControl.Caption, 1)
 Else
  jour1 = Right(UserForm3.ActiveControl.Caption, 2)
 End If
 mois1 = UserForm3.ComboBox1.Value
 an1 = UserForm3.TextBox1.Value
[SIZE=3][COLOR=red]If Not MonObjetDate Is Nothing Then MonObjetDate.Value[/COLOR][/SIZE] = CDate(jour1 & " " & mois1 & " " & an1)
 UserForm3.Hide
 [SIZE=3][COLOR=red]Set MonObjetDate = Nothing[/COLOR][/SIZE]
End Sub

Feuille 'Compte' SelectionChange modification en rouge:

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Cells.Count > 1 Then Exit Sub
    If Not Intersect(Target, Range("C4:C2000")) Is Nothing Then
        [SIZE=3][COLOR=red]Set MonObjetDate = ActiveCell[/COLOR][/SIZE]
        UserForm3.Show
    End If
End Sub

Dans saisieUsf modifications en rouge:

Code:
Private Sub TextBox3_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
[SIZE=3][COLOR=red]Set MonObjetDate = TextBox3[/COLOR][/SIZE]
UserForm3.Show
End Sub

Quant à :
Code:
Sub affcalendar()
  UserForm3.Show
End Sub
N'est pas utilisiée!

'-----------------------------------------------------------------------------------------
' USFSAISIE
'-----------------------------------------------------------------------------------------

Tu avais nommé ta procédure d'initialisation du userForm
Code:
Private Sub UserForm[SIZE=3][COLOR=red]4[/COLOR][/SIZE]_Initialize()
au lieu de
Code:
Private Sub UserForm_Initialize()

Elle n'était donc jamais exécutée!

de plus il y a apparament des objets qui n'existe pas et qui sont initialisés dans cette procédures:

ListBox5.SetFocus ->erreur 424 Objet Requis
......
Label7.Visible = False -> erreur idem

Apparament se Label7 inexistant pose problème à divers endroits. Commence par corriger cela.

La valorisation des cellules de la prochaine ligne disponible en D à l'air de se passer correctement.

A+


A+
 
Dernière modification par un modérateur:

Webperegrino

XLDnaute Impliqué
Supporter XLD
Re : Compte bancaire (problèmes de codification pour formulaire de saisie)

Bonjour Le Forum,
Bonjour Hasco et meric encore pour ton intervention.

Je vais prudemment essayer de corriger la codification, et surtout comprendre le fonctionnement, pour avancer de mon côté.

Certains codes ne sont pas utilisés : oui, en effet, ces deux fichiers origines i m'ont servi de références de travail, et une feuille récapitulative TCD par catégorie et sous-catégorie n'a pas encore été ajoutée dans mon application.
Je suppose que les codes sont en relation avec cette feuille laissée temporairement de côté).
J'ai aussi placé inutilement un ComboBox 1 en haut à droite du formulaire que je vais faire disparaître du lot.

La nuit porte conseil :
existe-t'il un moyen de faire paraître en déroulant dans ListBox3 (Détail 2 - Sous/Catégorie), mise en ordre alphabétique, la réunification des listes horizontales 'sous-catégories' piochées dans la feuille 'ListeB' ?
Sinon l'application risque de ne donner en ListBox3 que la ligne en correspondance avec un élément choisi dans ListBox2 (Rubrique / Catégorie) ou bien je devrais y faire de la saisie libre... Ce serait alors du "répépet" du contenu de ListBox4...
Exemple souhaité :
Rubrique / Catégorie : Retrait Argent
Détail 1 : Espèces
Détail 2 : Nicole (et non à nouveau Espèces)

Et enfin, si je plaçais cet "assemblage" dans une ListBox nouvelle remplaçant TextBox5 de détails 3, pourrais-je aussi y mettre de la saisie libre en cas de 'non choix' dans le déroulant proposé ?

Pour information, et pour une meilleure logique de remplissage du formulaire, j'y mettrai différemment ma présentation :
de gauche à droite, ce sera plus logique :
- Opération
- puis Rubrique / Catégorie
- puis la colonne des outils Détails 1
- puis celle de Détail 2 Sous/Catéogorie
- Détails3, rempli facultativement restant à sa place actuelle.

Mais cà, je sais faire maintenant.

Merci Hasco pour ta réactivité toujours plaisante -je vois que tu rogne aussi sur les heures de sommeil !-, je tiens tout le monde au courant, et transmettrai le résultat final pour ceux qui voudront utiliser cette petite merveille pour gérer mes comptes.
Bonne journée à vous tous.
Webperegrino
 

Webperegrino

XLDnaute Impliqué
Supporter XLD
Re : Compte bancaire (problèmes de codification pour formulaire de saisie)

Bonsoir Le Forum, Hasco,

J'ai cherché à bien placer tes rectifications.
Du coup (voir fichier rectifié ci-joint en fin de message) mon formulaire ne peut plus apparaître !
Où ai-je donc produit la mauvaise codification ?
Merci pour l'aide.

Nouveau :
- J'ai procédé à une classement décroissant sur la colonne D, dans la 'Feuille Compte'.
Je ne pense pas que ce soit cela qui provoque le blocage quand on clicque sir le bouton Saisie en AB1 de feuille "Compte"...
- Fichier rectifié avec ta codification rectificative,
- meilleure présentation - plus logique - de l'userform qui existe pourtant

Mais blocage sur le module 3
J'ai ceci :

Sub Fiche_de_Saisie()
'
' Macro1 Macro
' Macro enregistrée le 04/10/2009 par Henri
Saisieusf.Show
End Sub

avec message d'erreur sur le texte en rouge ci-dessus.

Voci le lien pour ce dernier fichier pour une correction finale à venir, s'il vous plait :

Cijoint.fr - Service gratuit de dépôt de fichiers

Merci
Webperegrino
 
G

Guest

Guest
Re : Compte bancaire (problèmes de codification pour formulaire de saisie)

Bonjour,

Je ne télécharge les fichiers joints ailleurs qu'exceptionnellement.
Surtout un fichier d'un tel poids pour ne corriger que quelques fautes de syntaxe.
De plus je suis sûr que tu saurais reporduire le problème dans un petit fichier <50 pour que nous puissions te dépanner. De plus cela permet de mieux comprendre la structure d'une démarche pour ensuite la reproduire.

A+
 

Webperegrino

XLDnaute Impliqué
Supporter XLD
Re : Compte bancaire (problèmes de codification pour formulaire de saisie)

Bonjour Hasco, Le Forum,
Bien compris ton message...

Donc excuse-moi pour mon dernier message.

Je m'absente hors région et ne pourrai pas 'replancher' avant une semaine sur cette codification que j'apprends à connaître -par exemple, remplacer l'userform 'SaisieUser' en Userform4 et reprendre la codification en conséquence et voir si ça fonctionne mieux -
Je ne doute pas qu'un jour j'arriverai à trouver la solution.

Merci encore pour ce coup de main de l'autre jour sur Downloads Forum.
Cordialement,
Webperegrino
 

Discussions similaires