Mon 1er UserForm, çà coince

Bonjour à tous,

Je me suis enfin décidé à faire un petit UserForm ,

Pour le premier, je ne suis pas mécontent du résultat sauf que :

  • à l'ouverture du fichier j'ai un bug pour activer la feuille "Mutuelle"
  • la liste déroulante n'affiche pas la date comme souhaité ("mmm aaaa")

Pourriez-vous m'orienter et me dire mes erreurs ?

Bonne journée

Claude

Bonsoir Claude

je n'ai pas de bug a l'ouverture

comme tu la fais pour ONG met la cellule au format texte

.Range("b" & i).NumberFormat = "@"

Cordialement

Bob

re

en voulant tester le fichier de OncleBarney je me suis apercu que j'avais le bug à l'ouverture

as tu des fichiers déjà ouvert sinon

ThisWorkbook.Sheets("Mutuelle").Activate peut être

a+

Bonsoir tout le monde,

J'ai rajouté une petite ligne dans ton code la ou "tu ne savais pas quoi mettre", j'espers que c'était la ton probleme.

Cordialement

edit, je remet le fichier, ca bloque

merci à vous,

mais ce n'est pas encore çà,

Dans mon code précédent, la liste était déjà triée, on ne pouvait pas juger du tri

Voici un nouveau code modifié, la colonne B formatée "Standard"

Sub ListeRep() 'lancée par Open
Dim Lg As Byte, i As Byte
Dim Texto$, chiffres$, annee$, mois$
        Application.ScreenUpdating = False
    '------- liste les fichiers
    With Sheets("ListeFichiers")
            .Range("a2:b200").ClearContents
            .Range("a2") = "CNUMR0410.xls"
            .Range("a3") = "CNUMR1109.xls"
            .Range("a4") = "CNUMR0210.xls"
            .Range("a5") = "CNUMR0110.xls"
        Lg = .Range("A65536").End(xlUp).Row

        For i = 2 To Lg
            Texto = .Range("A" & i)
            chiffres = Mid(Texto, 6, 4)
            annee = 2000 + Right(chiffres, 2)
            mois = Left(chiffres, 2)
            .Range("b" & i) = mois & "/" & annee
        Next i
            .Range("a1:b200").Sort Key1:=.Range("b1"), Order1:=xlAscending, _
            Header:=xlYes, OrderCustom:=1, MatchCase:=False
            .Range("A65536").End(xlUp).Name = "TopF"
    End With
End Sub

j'ai toujours le bug à l'ouverture avec: Sheets("Mutuelle").Activate

n'y aurait-il pas une question d'initialisation de l'UseForm ?

Claude

rebonjour,

Bizarre le blocage,

essaie celui-ci pour voir.

Cordialement

Bonjour à tous,

Pour la date c'est Ok, j'ai ajouté yyyy au lieu de yy, (sinon erreur)

Private Sub ComboBox1_Change() 'liste déroulante
'ici je sais pas quoi mettre !!
ComboBox1.Value = Format(ComboBox1.Value, "mmm  yyyy")
End Sub

reste le problème du plantage,

Il y a problème soit dans le ThisWorkbook (Open) ou dans l'activation de l'UserForm,

messages d'erreur en cliquant le bouton (pas à tous les coups !)

erreurs

Pourtant cet UserForm est des + simple ! , doit manquer quelque chose

J'ai enregistré sous un nouveau nom, mais c'est pareil

même en supprimant l'activation de la feuille "Mutuelle".

Amicalement

Claude.

15suivi-claude.zip (29.40 Ko)

Bonjour à tous

Claude, j'ai également travaillé sur la mise en place de l'USERFORM sur le fichier de guillaume.

Voici ce que ça donne :

Amicalement

Nad

Bonjour Nad,

On y arrivera pas en multipliant les fichiers tout azimut !

Ton UserForm ne va pas car on peut choisir des mois ou années qui ne sont pas dans la liste des fichiers,

ce qui provoque une erreur ici:

 x = WorksheetFunction.Match(Range("Top"), Range("ListeFichiers!b:b"), 0) 'liste mois

A mon avis, il faudrait continuer sur mon dernier fichier ici et trouver le bug.

ensuite, on adaptera au fichier de Guillaume

Bonne journée

Claude

BVonjour tout le monde,

Chez moi, (excel 2003) j'ai été obligé de rajouter "sceenupdating = true" car bizarrement l'affichage restait bloqué.

Pour le blocage sur l'activation de la page mutuelle, j'ai rempllacé le bouton choix par une form ("rectangle") en y affectant une macro pour ouvrir l'userform et tout fonctionne correctement (pourquoi, je ne sait pas???!!!) mais apparemment il bloque toujour chez toi claude?

petite remarque : hide ne ferme pas l'userform mais le masque simplement et la mémoire est toujours occupée, dans ce cas je le fermerai carrement (car il s'initialise) même si tu le réouvre après.

cordialement

Re

dubois a écrit :

On y arrivera pas en multipliant les fichiers tout azimut !

J'essaye tout simplement de faire avancer le schmilblick. Tu sais que je ne suis pas du genre à attendre que la solution arrive toute pondue. J'ai donc également travaillé de mon côté.

Mon fichier est là pour voir si tu peux adapter mes codes sur le tien.

dubois a écrit :
 x = WorksheetFunction.Match(Range("Top"), Range("ListeFichiers!b:b"), 0) 'liste mois

J'ai déjà relevé ce problème et j'étais en train de chercher une solution pour gérer l'erreur avec le style :

 x = WorksheetFunction.Match(Range("Top"), Range("ListeFichiers!b:b"), 0) 'liste mois
    If IsError(x) Then
    MsgBox ("Pas de fichier avec cette Date de Départ")

mais je n'y arrive pas.

Je regarde ton fichier pour voir si je peux l'adapter.

Amicalement

Nad

Bonjour maguetlolo,

petite remarque : hide ne ferme pas l'userform mais le masque simplement et la mémoire est toujours occupée, dans ce cas je le fermerai carrement (car il s'initialise) même si tu le réouvre après.

Je pense que tu mets le doigt dessus, c'est sans doute quelque chose du genre !

mais comment écrire çà ?

Claude

Claude, j'ai ouvert ton dernier fichier ; c'est quoi le problème ?

A te relire

Nad

3garde.xlsx (10.88 Ko)

unload userform1 tout simplement au lieu de userform1 hide mais ce n'est pas ca qui bloque ton fichier

as tu essayé de supprimer le bouton choix? lorsque je l'ai fait chez moi il n'y avait plus de probleme

re,

hola ! çà va un peu vite pour moi,

maguetlolo, S.T.P envoie une version avec ce que tu pense

Nad, le problème vient que çà plante par moment à l'ouverture

Claude

J'ai fermé et réouvert plusieurs fois et je n'ai pas eu de plantage.

Pour le code de l'ouverture sur la feuille Mutuelle :

Private Sub Workbook_Open()
    Call ListeRep
  Application.GoTo Reference:=Worksheets("Mutuelle").Range("A2"), Scroll:=True
End Sub

Nad

c'était le dernier fichier joint

re Nad,

oui c'est ce fichier, mais il faut modifier

Private Sub ComboBox1_Change() 'liste déroulante
'ici je sais pas quoi mettre !!
ComboBox1.Value = Format(ComboBox1.Value, "mmm  yyyy")
End Sub

au lieu de

ComboBox1.Value = Format(ComboBox1.Value, "mmm yy")

sinon erreur pour novembre

On va y arriver !

Claude

oui, ok, j'avais oublié de modifier, mais ce fichier il te fait toujours planter ou pas?

il veut pas me repondre non de non!!

Peut être regarder l'userform que j'avais fait pour l'histoire de Guillaume !!!

Salut Michel,

Oui, je m'en suis largement inspiré, mais comme je ne comprends pas,

j'ai voulu en faire un par moi-même, de sorte à savoir ce qu'il y a dedans,

comme c'est mon 1er je galère un peu mais confiant !

Je refais un fichier propre avec les différentes modifs, car là on va tout mélanger.

et je pourrais répondre à maguetlolo sur le plantage (là je ne sais plus !)

à tout à l'heure

Claude

Rechercher des sujets similaires à "mon 1er userform coince"