Problème de "formulaire"

Dan, j'ai supprimer les données du double-clics dans la feuille; mais cela ne change rien, le formulaire disparaît.

Merci quand même.

Bonne journée.

Dan, j'ai supprimer les données du double-clics dans la feuille; mais cela ne change rien, le formulaire disparaît.

Non il ne faut pas le supprimer. Ce code dans la feuille ne sert qu'à faire apparaitre le formulaire calendrier pour changer la date en colonne M.

Donc il n'y a aucun rapport avec le formulaire principal
Le souci n'est pas là et ces lignes de codes peuvent rester en place dans votre feuille

Dites moi pour le test suivant ce lien --> https://forum.excel-pratique.com/s/goto/1251522

Bingo 7 goal. Ok ça fonctionne.

Merci d'avoir super cogité pour trouver la solution.

Super, bonne après-midi.

Parfait cela !

Je vous donne en plus un code pour mettre dans votre feuille qui vous permettra d'avoir la liste des communes triées dans la colonne D si vous changez le nom du pays en colonne C.

Dim stpevt As Boolean

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Or stpevt = True Then Exit Sub
If Not Intersect(Target, Range("T_Liste").ListObject.ListColumns(3).DataBodyRange) Is Nothing Then
    Call trier(Target.Value)
    stpevt = True
    Target.Offset(, 1).ClearContents
End If
stpevt = False
End Sub

Rem importante : veillez surtout à placer ce code juste en dessous de la première ligne --> Option explicit
Au final vous aurez deux codes dans cette feuille, celui ci-dessus et le code pour le double clic

Ok encore merci pour votre travail et votre patience.

Bonne journée.

Pas de souci avec plaisir de vous avoir aidé depuis le début du fil

Si besoin n'hésitez pas

Cordialement

Merci bcq.

Re-bonjour, comme vous me l'aviez si gentiment proposé, je reviens pour quelque détails.

J'ai modifié le formulaire, presque tout fonctionne sauf:

le bouton "Modifier" (quand je clic, il n'y a pas le changement désiré)il ne se passe rien

et j'ai changé des "txtbox" en "cbox" qui fonctionnent; mais

la " txtbox_durée " changée en " cbox_durée"; ne fonctionne pas

Apparemment au niveau de: CBox_Durée.List

et je n'arrive pas à trouver l'erreur.

Si vous aviez encore 1 pt moment à me consacrer.

Merci d'avance et bon weekend.

Bonjour

Tout n'est pas bon là....
Donc là je vais procèder par étape

1. Dans votre USF, Sub initialize, à quoi sert ceci ??

 Dim nblign As Integer
'Lbl_Fin.Caption = Range("A65789").End(xlUp).Row - 1 '57.15
Lbl_Fin.Caption = Range("B300").End(xlUp).Row - 1 '57.15
nblign = ActiveCell.Row - 1
Lbl_Debut.Caption = nblign

2. Quelle est la bonne Userform que vous utilisez ? --> USF_Liste_Balades_Copie ?
3. A quoi sert la textbox Durée. On peut utiliser le Cbox_durée
4. Lorsque vous lancez l'USF est ce que vous voulez qu'elle soit vide ou pas

NB : votre tableau est au format structuré et par conséquent les lignes de code sont différentes. et de ce que je vois il y aurait pas mal de choses à revoir notamment sur les select et les activecell

Bonjour, dsl hier, pas à la maison.

1 . Dans l' "USF - Sub initialize", ce sont des lignes de code que j'ai recopier d'un autre "USF",

pour utiliser - 1er enregistrement - précédent - suivant - dernier enregistrement.

Je viens d'essayer en les supprimant, et apparemment cela fonctionne quand même. (merci)

2 . Oui il n'y a que 2 USF pour le fichier - votre calendrier et USF_Liste_Balades_Copie .

Les autres étaient pour des essais et des recopies de codes. (dsl de ne pas les avoir enlevés).

3 . Je n'ai pas supprimé la "TxtBox Durée" car je n'ai pas réussi avec la "CBox Durée". (donc au cas où, j'aurais gardé la TxtBox)

4 . Oui, vide.

Désolé de vous embêter avec mes pts soucis.

Encore merci et bon weekend.

RE.

Oui effectivement il y avait quelques erreurs dans les N°, j'ai rectifié. (merci).

Bonjour

Bonjour, dsl hier, pas à la maison......
Désolé de vous embêter avec mes pts soucis.

Pas de soucis. Cela m'a permis de faire une passe sur votre fichier. Merci pour la réponse aux questions.

Votre fichier retour dans lequel j'ai apporté pas mal de modifications : :

- Modifié le code Initialize pour que la combo durée reprennent les données
- Les codes pour utiliser - 1er enregistrement - précédent - suivant - dernier enregistrement sont revus. On n'utilise pas des sélections de cellule pour se repérer.
Vous verrez que j'ai aussi désactivé les boutons Précédent ou Suivant selon que vous soyez à la fin ou au début de votre feuille. Au départ pour afficher le premier ou le dernier enregistrement, cliquez sur la flèche à gauche ou à droite.
- Les codes pour la modification et suppression sont corrigés. On utilise les instructions pour les tableaux structurés. Lorsque vous modifiez une donnée l'USF ne se ferme pas, on efface juste les données
- La Textbox durée est supprimée

Pour se repérer dans la feuille et vu que vous avez ajouté une fonctionnalité pour se déplacer (boutons précédent, suivant...), on utilise la donnée du "lbl_debut.caption" (vous verrez que j'ai nommé une variable ID pour cela)

NB : Ne supprimez pas l'instruction Option Explicit en entête des codes. Cela vous permet de vérifier que les variables sont bien déclarées. Une mauvaise déclaration joue sur la mémoire Excel lors de l'exécution.

J'espère vous avoir tout expliqué sur les modifications mais si question n'hésitez pas bien entendu. Je repasse plus tard.

Crdlt

Bonne journée, j'espère ne plus devoir vous déranger.

Ok et encore un grand merci pour tous.

Tout fonctionne à merveille, merci encore.

Juste 1 question.

Lorsque qu'une commune (ville) n'est pas dans la liste,

est-ce qu'il serait possible que cette commune s'ajoute à la liste du pays approprié en cliquant sur valider

ou faut-il rajouter 1 bouton ou encore, faut-il le faire manuellement?

Merci d'avance.

re

Vous ne me dérangez nullement.

Lorsque qu'une commune (ville) n'est pas dans la liste,
est-ce qu'il serait possible que cette commune s'ajoute à la liste du pays approprié en cliquant sur valider

Non oubliez cela, ce serait complexe et à déveloper avec une autre USF.
Excel et VBA, on arrive vite à une usine à gaz.
Le plus simple et le plus direct, c'est d'aller compléter manuellement dans la feuille Références (c'est aussi valable pour toutes les données de cette feuille)

Ex dans le fichier actuel :
- pour Belgique, mettez-vous en cellule A121 et ajouter la ville. Le tableau structuré va s'adapter automatiquement et les communes seront automatiquement dans la combo
- pour France, prenez la première cellule vide. Donc B47.
Avec ce tableau structuré vous complétez toujours en dessous de la dernière cellule contenant une donnée

Cordialement

Bonjour à tous,

Pour pouvoir faire les changements demandés, il faut tout d'abord changer la méthode et le tableau qui va garder les diverses communes.

Comme ceci.

excel yy48ibsjdt

Une fois cela fait le chargement des contrôles zones de liste Pays et communes devront se faire grâce à une méthode de remplissage de valeurs uniques; Et non plus grâce à une plage. (Il existe pas mal de codes là-dessus).

Ensuite s'offrent à vous deux méthodes de contrôle pour le changement.

  • Tester sur les méthodes AfterUpdate ou Change des contrôle 'Pays' et 'Communes'
    • La plus simple à mettre en place
    • Peut poser des problèmes si vous ne valider pas l'ensemble des changements de la balade, (Une commune et peut-être un pays seront créés.)
  • Ajouter le pays et ou la commune à la validation finale.
    • Cela complique un peu le code, du bouton de validation (Mais vous pouvez créer des sous routines.)
    • Vous avez le contrôle sur l'ensemble de la gestion.

Voici un petit exemple minimaliste de gestion de zones de texte en cascades. avec en prime une fonction de remplissage avec critères.

A l'attention de Jean-Paul, merci pour le poste et le fichier.

A l'attention de Dan.

Dsl de revenir, tout allait bien; mais après quelques enregistrements d'essais supplémentaires

le nouvel enregistrement remplace le dernier enregistrement et cela après chaque nouvel enregistrement .

Et 1 question:

serait-il possible que la date du jour se sélectionne automatiquement dans la calendrier sur le formulaire?

Merci d'avance.

Bonjour,

le nouvel enregistrement remplace le dernier enregistrement et cela après chaque nouvel enregistrement

Expliquez moi ce que vous faites que je reproduise. Actuellement si j'ouvre l'usf, j'ajoute une donnée. La validation ajoute la ligne correctement.

serait-il possible que la date du jour se sélectionne automatiquement dans la calendrier sur le formulaire?

Lol ! j'aurais parié que vous me l'auriez demandé... Je regarde ce point


Edit : Votre fichier pour test.
J'ai trouvé un ou deux bugs et ai donc apporté quelques modif dans certains codes (j'ai ajouté une mention avec la date).
L'ajout de plusieurs lignes ne m'a pas montré en souci.

Pour votre demande --> La date du jour est sélectionnée à l'ouverture de l'usf calendrier. Si changement de mois ou d'année, c'est toujours le1er du mois qui est sélectionné

Re-bonjour, après avoir repris le formulaire "V3" d'origine et fait quelques essais, tout fonctionne normalement.

A partir du moment où j'utilise les boutons ( 1er - précédent - suivant - dernier) tous les nouveaux enregistrement remplacent le dernier.

1 . A ce propos, serait-il possible que lorsque je clic sur "1er" la cellule de la ligne en question soit sélectionnée

(donc ici "A2 ou B2)et idem pour (précédent - suivant - dernier).

Merci d'avance.

Rechercher des sujets similaires à "probleme formulaire"