Modifier une "Macro Excel VBA"
Fermé
Rolandin
-
21 mai 2013 à 18:58
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 - 24 mai 2013 à 23:26
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 - 24 mai 2013 à 23:26
A voir également:
- Modifier une "Macro Excel VBA"
- Modifier liste déroulante excel - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Modifier dns - Guide
- Déplacer une colonne excel - Guide
- Comment modifier un pdf - Guide
4 réponses
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 779
24 mai 2013 à 23:26
24 mai 2013 à 23:26
Bonsoir,
Il faut que nommes correctement les TextBox du formulaire.
Actuellement, l(es) erreur(s) provien(nen)t des noms :
D'autre part :
Il faut que nommes correctement les TextBox du formulaire.
Actuellement, l(es) erreur(s) provien(nen)t des noms :
Txt_poids n'existe pas Txt_taille n'existe pas Txt_posteoccupe n'existe pas Txt_abonn n'existe pas Txt_situafamil n'existe pas
D'autre part :
Txt_fax correspond à Poids Txt_email correspond à Taille Txt_prof correspond à Poste occupé TxtBox1 Correspond à Abonné TxtBox2 Correspond à Email TxtBox3 Correspond à Prof TxtBox4 Correspond à Situation
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 779
22 mai 2013 à 00:27
22 mai 2013 à 00:27
Bonjour,
Remplaces :
Remplaces :
If InStr(1, Cellule.Value, MotRechercher) > 0 ThenPar:
If InStr(1, UCase(Cellule.Value), UCase(MotRechercher)) > 0 Then
rolandin
Messages postés
201
Date d'inscription
vendredi 3 octobre 2003
Statut
Membre
Dernière intervention
18 février 2014
22 mai 2013 à 10:29
22 mai 2013 à 10:29
Bonjour et merci de ta réponse, mais pour moi il n'y a rien de changé en modifiant cette ligne, j'ai toujours la fenêtre "Sélectionnez une colonne qui s'ouvre" et quand je frappe le mot que je recherche dans cette colonne (alors que je veux faire cette recherche depuis la colonne A à la N) celui-ci n'est pas encadré comme avec ligne de commande
Si tu as une autre idée
Si tu as une autre idée
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 779
22 mai 2013 à 10:44
22 mai 2013 à 10:44
Re,
C'est pas très limpide tout ça :
« et quand je frappe le mot que je recherche dans cette colonne (alors que je veux faire cette recherche depuis la colonne A à la N) celui-ci n'est pas encadré comme avec ligne de commande »
C'est normal, la recherche s'effectue uniquement dans la plage sélectionnée !
Si tu veux rechercher dans les colonnes A à N, il faut sélectionner les colonnes A à N
Qu'entends-tu par « comme avec ligne de commande »
Patrice
C'est pas très limpide tout ça :
« et quand je frappe le mot que je recherche dans cette colonne (alors que je veux faire cette recherche depuis la colonne A à la N) celui-ci n'est pas encadré comme avec ligne de commande »
C'est normal, la recherche s'effectue uniquement dans la plage sélectionnée !
Si tu veux rechercher dans les colonnes A à N, il faut sélectionner les colonnes A à N
Qu'entends-tu par « comme avec ligne de commande »
Patrice
rolandin
Messages postés
201
Date d'inscription
vendredi 3 octobre 2003
Statut
Membre
Dernière intervention
18 février 2014
22 mai 2013 à 11:21
22 mai 2013 à 11:21
Re,
Désolé, cela fonctionne très bien, mais comme d'habitude quand il y a un "petit défaut" c'est celui-là que nous choisissons. Je m'explique je n'avais sélectionné qu'une colonne (pour tester) et j'ai chois un prénoms, manque de chance "le seul" qui avait un "accent" celui de "René", c'est peut-être un paramètre qu'il faudrait incorporer ? dans le cas ou l'utilisateur mettra des accents et que celui qui aura rempli les cellules ne les mettent pas.
Sinon comme tu le conseils, en sélectionnant toutes les colonnes, "tout fonctionne" très bien. Si tu as une modification à apporter pour les lettres accentuées ou non soient prisent en compte je suis preneur, merci d'avance
Pour ta question :
Qu'entends-tu par « comme avec ligne de commande »
je voulais dire par l'ancien code (pour ma petite tête c'est une commande) que tu m'as fait changé à juste titre
Bonne journée Patrice33740
Désolé, cela fonctionne très bien, mais comme d'habitude quand il y a un "petit défaut" c'est celui-là que nous choisissons. Je m'explique je n'avais sélectionné qu'une colonne (pour tester) et j'ai chois un prénoms, manque de chance "le seul" qui avait un "accent" celui de "René", c'est peut-être un paramètre qu'il faudrait incorporer ? dans le cas ou l'utilisateur mettra des accents et que celui qui aura rempli les cellules ne les mettent pas.
Sinon comme tu le conseils, en sélectionnant toutes les colonnes, "tout fonctionne" très bien. Si tu as une modification à apporter pour les lettres accentuées ou non soient prisent en compte je suis preneur, merci d'avance
Pour ta question :
Qu'entends-tu par « comme avec ligne de commande »
je voulais dire par l'ancien code (pour ma petite tête c'est une commande) que tu m'as fait changé à juste titre
Bonne journée Patrice33740
rolandin
Messages postés
201
Date d'inscription
vendredi 3 octobre 2003
Statut
Membre
Dernière intervention
18 février 2014
22 mai 2013 à 17:19
22 mai 2013 à 17:19
Bonsoir,
Je viens de recevoir dans ma boite une réponse de "michel_m", mais je ne retrouve pas cette réponse à la suite des vôtres ou des miennes, pourquoi ?
Il me propose ces codes ci-dessous, mais je rencontre 2 problèmes, si je sélectionne de la colonne A:N, et que je frappe un prénom qui est dans le tableau, j'ai le message "inconnu". Si j'écris "René" sans accent il ne trouve pas nom plus.
De plus j'ai fait un petit changement, j'ai mis le bouton "Recherche" sur la feuille "Accueil", mais mon tableau est sur la feuille "Base", donc je ne peux pas sélectionner les colonnes, il faudrait qu'après avoir appuyé sur le bouton recherche la feuille "Base" s'ouvre.
Sub cmb_recherche()
Dim Plage As Range
Dim MotRechercher As String
Dim col As Byte, ligne As Long
Set Plage = Application.InputBox("Sélectionnez une colonne !", "Us se débrouille pour vous...", Type:=8)
col = Plage.Column
MotRechercher = InputBox("Entrer le mot à rechercher", "Us")
If MotRechercher = vbNullString Then Exit Sub
On Error GoTo inconnu
ligne = Columns(col).Find(MotRechercher, Cells(1, col), xlValues, xlWhole).Row
Cells(ligne, col).Select
Exit Sub
inconnu:
MsgBox MotRechercher & " inconnu ", vbCritical
End Sub
Je viens de recevoir dans ma boite une réponse de "michel_m", mais je ne retrouve pas cette réponse à la suite des vôtres ou des miennes, pourquoi ?
Il me propose ces codes ci-dessous, mais je rencontre 2 problèmes, si je sélectionne de la colonne A:N, et que je frappe un prénom qui est dans le tableau, j'ai le message "inconnu". Si j'écris "René" sans accent il ne trouve pas nom plus.
De plus j'ai fait un petit changement, j'ai mis le bouton "Recherche" sur la feuille "Accueil", mais mon tableau est sur la feuille "Base", donc je ne peux pas sélectionner les colonnes, il faudrait qu'après avoir appuyé sur le bouton recherche la feuille "Base" s'ouvre.
Sub cmb_recherche()
Dim Plage As Range
Dim MotRechercher As String
Dim col As Byte, ligne As Long
Set Plage = Application.InputBox("Sélectionnez une colonne !", "Us se débrouille pour vous...", Type:=8)
col = Plage.Column
MotRechercher = InputBox("Entrer le mot à rechercher", "Us")
If MotRechercher = vbNullString Then Exit Sub
On Error GoTo inconnu
ligne = Columns(col).Find(MotRechercher, Cells(1, col), xlValues, xlWhole).Row
Cells(ligne, col).Select
Exit Sub
inconnu:
MsgBox MotRechercher & " inconnu ", vbCritical
End Sub
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
Modifié par michel_m le 23/05/2013 à 08:34
Modifié par michel_m le 23/05/2013 à 08:34
Bonjour,
J'ai supprimé mon message car il se basait sur 1 seule colonne et tu as changé ta demande avec plusieurs colonnes:
j'ai donc perdu mon temps à essayer de t'aider
d'autant plus que dans ce dernier message , il y a ENCORE des changements....
donc....
J'ai supprimé mon message car il se basait sur 1 seule colonne et tu as changé ta demande avec plusieurs colonnes:
j'ai donc perdu mon temps à essayer de t'aider
d'autant plus que dans ce dernier message , il y a ENCORE des changements....
donc....
rolandin
Messages postés
201
Date d'inscription
vendredi 3 octobre 2003
Statut
Membre
Dernière intervention
18 février 2014
23 mai 2013 à 09:08
23 mai 2013 à 09:08
Bonjour michel_m
Tu n'as pas perdu ton temps, je suis désolé si tu le penses ainsi.
Mais si tu relis mon message du début depuis la sixième et septième ligne je dis :
Je voudrais qu'il n'y ait qu'une seule fenêtre qui s''ouvre c'est à dire celle pour me demander "le mot à rechercher". Et que cette recherche soit faite de la colonne "A à N"
En effet j'ai apporté un petit changement, (si celui-ci est possible) car en attendant des réponses je fais d'autres essais pour améliorer la présentation. Si les codes sur lesquels tu as travaillé fonctionnent comme je le voudrais, je souhaite faire une amélioration comme dit dans mon message plus haut
J'ai 72 ans je début dans ces codes que je ne connais "absolument pas" et j'ai besoin de beaucoup d'aide pour rendre service à un jeune de 30 ans qui pourrait utiliser ce fichier "bénévolement" dans un club local de remise en forme. Alors j'ai encore "beaucoup de choses à ajouter qui me viennent au coup par coup.
Merci de ta participation, je te souhaite une très bonne journée
Tu n'as pas perdu ton temps, je suis désolé si tu le penses ainsi.
Mais si tu relis mon message du début depuis la sixième et septième ligne je dis :
Je voudrais qu'il n'y ait qu'une seule fenêtre qui s''ouvre c'est à dire celle pour me demander "le mot à rechercher". Et que cette recherche soit faite de la colonne "A à N"
En effet j'ai apporté un petit changement, (si celui-ci est possible) car en attendant des réponses je fais d'autres essais pour améliorer la présentation. Si les codes sur lesquels tu as travaillé fonctionnent comme je le voudrais, je souhaite faire une amélioration comme dit dans mon message plus haut
J'ai 72 ans je début dans ces codes que je ne connais "absolument pas" et j'ai besoin de beaucoup d'aide pour rendre service à un jeune de 30 ans qui pourrait utiliser ce fichier "bénévolement" dans un club local de remise en forme. Alors j'ai encore "beaucoup de choses à ajouter qui me viennent au coup par coup.
Merci de ta participation, je te souhaite une très bonne journée
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 779
23 mai 2013 à 14:36
23 mai 2013 à 14:36
Bonjour,
En lisant ton dernier message, je m'aperçoit que la réponse que je t'ai donné ne donne pas entière satisfaction : « Je voudrais qu'il n'y ait qu'une seule fenêtre qui s''ouvre c'est à dire celle pour me demander "le mot à rechercher" »
Je pensais que, puisque tu l'avait écrite, la demande de choix de la colonne avait une certaine importance.
Pour supprimer ce choix, tu peux remplacer ligne :
En lisant ton dernier message, je m'aperçoit que la réponse que je t'ai donné ne donne pas entière satisfaction : « Je voudrais qu'il n'y ait qu'une seule fenêtre qui s''ouvre c'est à dire celle pour me demander "le mot à rechercher" »
Je pensais que, puisque tu l'avait écrite, la demande de choix de la colonne avait une certaine importance.
Pour supprimer ce choix, tu peux remplacer ligne :
Set Plage = Application.InputBox("Sélectionnez une colonne !", "Us se débrouille pour vous...", Type:=8)par :
Set Plage = ActiveSheet.UsedRange
rolandin
Messages postés
201
Date d'inscription
vendredi 3 octobre 2003
Statut
Membre
Dernière intervention
18 février 2014
23 mai 2013 à 18:42
23 mai 2013 à 18:42
Bonsoir Patrice,
Désolé pour ce retard à te répondre, mais je suis plongé dans mes recherches pour mieux comprendre les "macros", et pendant cette période je n'ouvre pas souvent ma boite.
Ta modification est super, je n'ai plus qu'une fenêtre qui s'ouvre.
Maintenant il ne me reste plus qu'à trouver un code pour que les textes "accentués" ou non soient reconnus, si tu sais faire je suis preneur. J'ai également recherché toute l'après midi des codes pour "sauter" à la ligne suivante. Par exemple je me trouve sur la ligne 3 comment écrire les codes pour aller à la suivant ou à la précédente.
Merci encore de ta participation
Désolé pour ce retard à te répondre, mais je suis plongé dans mes recherches pour mieux comprendre les "macros", et pendant cette période je n'ouvre pas souvent ma boite.
Ta modification est super, je n'ai plus qu'une fenêtre qui s'ouvre.
Maintenant il ne me reste plus qu'à trouver un code pour que les textes "accentués" ou non soient reconnus, si tu sais faire je suis preneur. J'ai également recherché toute l'après midi des codes pour "sauter" à la ligne suivante. Par exemple je me trouve sur la ligne 3 comment écrire les codes pour aller à la suivant ou à la précédente.
Merci encore de ta participation
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 779
23 mai 2013 à 23:08
23 mai 2013 à 23:08
Pour les textes accentués, tu peux trouver des fonctionsmais le temps d'exécution de la macro risque de devenir prohibitif !
pour passer la sélection à la ligne suivante :
Selection.Offset(1).Select
à la précédente :
Selection.Offset(-1).Select
Mais en VBA il est rarement nécessaire de sélectionner une plage,
Autrement dit : le ".Select" est à éviter.
Patrice
pour passer la sélection à la ligne suivante :
Selection.Offset(1).Select
à la précédente :
Selection.Offset(-1).Select
Mais en VBA il est rarement nécessaire de sélectionner une plage,
Autrement dit : le ".Select" est à éviter.
Patrice
rolandin
Messages postés
201
Date d'inscription
vendredi 3 octobre 2003
Statut
Membre
Dernière intervention
18 février 2014
24 mai 2013 à 11:31
24 mai 2013 à 11:31
Merci Patrice,
Tout fonctionne très bien, super, avec des codes simples. J'aurais un autre besoin qui me ferais un grand plaisir, mais je ne sais pas comment le régler. Je vais essayer de m'expliquer dans un prochain message, car je n'ai tout fini. Est-ce qu'il y a possibilité de joindre mon fichier de joindre une capture d'image de ce que je voudrais de ma demande ci-dessous ?
J'aimerais que ce masque (qui serait le fichier adhérents, fiche par fiche) soit constamment visible avec dans chaque « zone d'édition » les informations de chaque adhérent, avec « deux boutons » en plus pour visualiser la fiche « Suivante » ou la fiche « Précédente » sans que j'ai en permanence le tableau Excel sous les yeux.
Je ne sais si je suis clair, en attendant "bonne journée à toi"
.
Tout fonctionne très bien, super, avec des codes simples. J'aurais un autre besoin qui me ferais un grand plaisir, mais je ne sais pas comment le régler. Je vais essayer de m'expliquer dans un prochain message, car je n'ai tout fini. Est-ce qu'il y a possibilité de joindre mon fichier de joindre une capture d'image de ce que je voudrais de ma demande ci-dessous ?
J'aimerais que ce masque (qui serait le fichier adhérents, fiche par fiche) soit constamment visible avec dans chaque « zone d'édition » les informations de chaque adhérent, avec « deux boutons » en plus pour visualiser la fiche « Suivante » ou la fiche « Précédente » sans que j'ai en permanence le tableau Excel sous les yeux.
Je ne sais si je suis clair, en attendant "bonne journée à toi"
.
Patrice33740
Messages postés
8556
Date d'inscription
dimanche 13 juin 2010
Statut
Membre
Dernière intervention
2 mars 2023
1 779
24 mai 2013 à 17:06
24 mai 2013 à 17:06
Tu peux déposer le(s) fichier(s) non confidentiel(s) sur https://www.cjoint.com/ et mettre le(s) lien(s) dans ton prochaine message
rolandin
Messages postés
201
Date d'inscription
vendredi 3 octobre 2003
Statut
Membre
Dernière intervention
18 février 2014
24 mai 2013 à 18:58
24 mai 2013 à 18:58
Merci de ta proposition, je suis en train de modifier et d'ajouter quelques cases et bouton, car il me manque encore des précisions de la part du futur "utilisateur" qui me trouve toujours des choses à ajouter.
Dés que je suis près je te transmets ce fichier
Bonne soirée
Dés que je suis près je te transmets ce fichier
Bonne soirée