Autres Excel 2007 : Problème validation formulaire vba

Nonomix

XLDnaute Nouveau
Bonjour,

J'ai dans le formulaire le TextBox4 qui m'indique le nom saisie dans le TextBox1 (je voudrais aussi indiquez le premier caractère du TexteBox2 avec un espace entre les 2). Je sais pas comment on fait.

Le TextBox 4 est fait pour avoir le nom de la feuille, j'aimerais savoir si il y a possibilité de faire une recherche dans les noms de feuille afin de ne pas avoir ni erreur VBA ni 2 feuilles portant le même nom si ce cas ce présente avoir un message demandant de changer de nom de feuille.

Pour la date, j'ai 3 TextBox mais n'est pas vraiment opérationnel, en effet j'ai un message d'alerte lorsque la date est mauvaise mais quand je fais ok, je reviens au formulaire, mais la nouvelle feuille se créer quand même à ce moment plutôt que seulement quand la date est bonne.

Et pour finir un code qui déverrouille pour la structure (qui est bloquer par un code) pour que la macro se fasse et reverrouille la structure à la fin.

Merci à celui peut m'expliquer comment résoudre mon soucis.
 

Pièces jointes

  • Vba nono - Copie.xlsm
    50.2 KB · Affichages: 21
Solution
Donc vous n'avez pas insérer la ligne au bon endroit :
VB:
ActiveSheet.Unprotect (mdp)
Sheets("FEUILLE TYPE A COPIER (2)").Name = TextBox4
FeuilDeRetour = TextBox4 ' pour le retour après l'action sur Recap
feuilderetour doit être après le renommage.

Nonomix

XLDnaute Nouveau
Oui.
Au départ on fait une copie cachée, renommée.
Si feuille absente on la duplique avec format, valeurs, boutons .... MAIS sans aucune donnée.
Ça dépend de votre stratégie. Supprimer Recap permet de retrouver la feuille mais sans les données que vous avez mises dedans.
Dans ma feuille type à copier et dans ma feuille recap il y a des formules, la feuille recap est le feuille ou on retrouve les informations annuel de toutes les feuilles donc essentielle.
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Voilà la V10.
Feuille type et Recap sont reconstruites si elles sont supprimées.
Evidemment si des modifications doivent être apportées à ces feuilles, elles doivent se faire Sur les références masquées : Ne pas toucher, et Ne pas toucher Recap.
Ensuite il suffit de supprimer les feuilles type et Recap pour qu'elles se reconstruisent.
 

Pièces jointes

  • Vba nono - V10.xlsm
    83.3 KB · Affichages: 4

Nonomix

XLDnaute Nouveau
Voilà la V10.
Feuille type et Recap sont reconstruites si elles sont supprimées.
Evidemment si des modifications doivent être apportées à ces feuilles, elles doivent se faire Sur les références masquées : Ne pas toucher, et Ne pas toucher Recap.
Ensuite il suffit de supprimer les feuilles type et Recap pour qu'elles se reconstruisent.
Merci, je viens de m'apercevoir que j'avais oublier de préciser que le nom inscrit dans le TextBox4 doit aussi se mettre dans la feuille "RECAP" de R5 à Rxx mais je ne connais pas le code.
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Re Bonjour,
Pour le coup vous n'avez pas dû chercher beaucoup :
VB:
' Insertion Textbox4 dans la liste de Recap Col R, à partir de R5.
DerLig = Application.WorksheetFunction.CountA(Sheets("Recap").Range("R5:R500"))
Sheets("Recap").Range("R" & DerLig + 5) = TextBox4.Value
 

Pièces jointes

  • Vba nono - V11.xlsm
    87.4 KB · Affichages: 3

Nonomix

XLDnaute Nouveau
Pour le coup vous n'avez pas dû chercher beaucoup :
VB:
' Insertion Textbox4 dans la liste de Recap Col R, à partir de R5.
DerLig = Application.WorksheetFunction.CountA(Sheets("Recap").Range("R5:R500"))
Sheets("Recap").Range("R" & DerLig + 5) = TextBox4.Value

Merci, mon code était incomplet,

J'ai encore une question, je sais encore une de plus mais je souhaiterais que la liste en R (qui est un tableau) soit trier en fin de macro ?
 

Nonomix

XLDnaute Nouveau
Je vous dit que vous avez peu cherché, vous me répondez mon code était incomplet.
Vous pourriez expliquer ?

J'avais juste : Sheets("Recap").Range("R" & DerLig + 5) = TextBox4.Value


Visiblement il y a juste a rajouter tri en dessous du code

DerLig = Application.WorksheetFunction.CountA(Sheets("RECAP").Range("R5:R500"))
Sheets("RECAP").Range("R" & DerLig + 5) = TextBox4.Value

mais j'ai une erreur de Compilation : Sub ou Fonction non défini

quand je l'intègre a mon tableau.
 

Nonomix

XLDnaute Nouveau
J'avais juste : Sheets("Recap").Range("R" & DerLig + 5) = TextBox4.Value


Visiblement il y a juste a rajouter tri en dessous du code

DerLig = Application.WorksheetFunction.CountA(Sheets("RECAP").Range("R5:R500"))
Sheets("RECAP").Range("R" & DerLig + 5) = TextBox4.Value

mais j'ai une erreur de Compilation : Sub ou Fonction non défini

quand je l'intègre a mon tableau.
C'est bon j'avais oublier la macro du tri. Je vais me reposer et reprendrais un peu plus tard.
 

Discussions similaires

Réponses
17
Affichages
627
Réponses
9
Affichages
154
Réponses
11
Affichages
185

Statistiques des forums

Discussions
312 177
Messages
2 085 972
Membres
103 073
dernier inscrit
MSCHOE16