OVH Cloud OVH Cloud

nb.si en vba

15 réponses
Avatar
tinou
Bonjour a tous,

apres plusieurs noyades sur ce forum
je pose ma question...

J'ai un UserForm avec :
-Txt_N°Ordre (TextBox) j'y rentre un numero
-NbSupp (TextBox)
-Cmd_Chercher (CommandButton)
-Cmd_SuppRecherche (CommandButton)
-...

le but de cette macro, c'est de rechercher le numero d'ordre(colonne A)
taper dans Txt_N°Ordre, de faire une verif sur la ligne de ce numero
et d'inscrire "SUPPRIMER" dans la cellule, a la place du num.

Je voulais donc ameliorer cette macro, en ajoutant un nouveau
textbox (NbSupp) sur le userform.
ce textbox indiquerait le nombre de "SUPPRIMER" trouvé dans la colonne A...

Donc la manip est que, je lance la macro,
dans le nouveau Textbox (NbSupp) est inscrit 0,
je tape 47521, je clicke sur le bouton Chercher,
elle me trouve ce num dans la colonne A,
m'indique les infos dans les autres cellules de cette ligne,
je clicke sur bouton Supprimer, et dans la cellule selectionnée
(A47522 j'ai une ligne de titre) est inscrit SUPPRIMER.
je me retrouve au debut du userform, pret a retaper un numero,
et dans le nouveau Textbox (NbSupp) est inscrit 1...

je tape 142... blabla... le num est remplacé par SUPPRIMER
NbSupp = 2

je tape 41236... NbSupp = 3

je ferme tout. je dors. je me reveille...

je lance ma macro et NbSupp = 3

...

Voila en esperant avoir ete clair...
Quel est le bout de code a insere ??? ou ???
Faut-il un Private Sub ?

Merci d'avance pour votre aide.

Tinou

Ps : Merci à Lolote

10 réponses

1 2
Avatar
Daniel
Bonjour.
Je n'ai sans doute rien compris, mais ça me parait logique ?
Cordialement.
"tinou" a écrit dans le message de news:

Bonjour a tous,

apres plusieurs noyades sur ce forum
je pose ma question...

J'ai un UserForm avec :
-Txt_N°Ordre (TextBox) j'y rentre un numero
-NbSupp (TextBox)
-Cmd_Chercher (CommandButton)
-Cmd_SuppRecherche (CommandButton)
-...

le but de cette macro, c'est de rechercher le numero d'ordre(colonne A)
taper dans Txt_N°Ordre, de faire une verif sur la ligne de ce numero
et d'inscrire "SUPPRIMER" dans la cellule, a la place du num.

Je voulais donc ameliorer cette macro, en ajoutant un nouveau
textbox (NbSupp) sur le userform.
ce textbox indiquerait le nombre de "SUPPRIMER" trouvé dans la colonne
A...

Donc la manip est que, je lance la macro,
dans le nouveau Textbox (NbSupp) est inscrit 0,
je tape 47521, je clicke sur le bouton Chercher,
elle me trouve ce num dans la colonne A,
m'indique les infos dans les autres cellules de cette ligne,
je clicke sur bouton Supprimer, et dans la cellule selectionnée
(A47522 j'ai une ligne de titre) est inscrit SUPPRIMER.
je me retrouve au debut du userform, pret a retaper un numero,
et dans le nouveau Textbox (NbSupp) est inscrit 1...

je tape 142... blabla... le num est remplacé par SUPPRIMER
NbSupp = 2

je tape 41236... NbSupp = 3

je ferme tout. je dors. je me reveille...

je lance ma macro et NbSupp = 3

...

Voila en esperant avoir ete clair...
Quel est le bout de code a insere ??? ou ???
Faut-il un Private Sub ?

Merci d'avance pour votre aide.

Tinou

Ps : Merci à Lolote


Avatar
isabelle
bonjour,

NbSupp = Application.CountIf(Sheets("Feuil1").Range("A:A"), "SUPPRIMER")

isabelle

Bonjour a tous,

apres plusieurs noyades sur ce forum
je pose ma question...

J'ai un UserForm avec :
-Txt_N°Ordre (TextBox) j'y rentre un numero
-NbSupp (TextBox)
-Cmd_Chercher (CommandButton)
-Cmd_SuppRecherche (CommandButton)
-...

le but de cette macro, c'est de rechercher le numero d'ordre(colonne A)
taper dans Txt_N°Ordre, de faire une verif sur la ligne de ce numero
et d'inscrire "SUPPRIMER" dans la cellule, a la place du num.

Je voulais donc ameliorer cette macro, en ajoutant un nouveau
textbox (NbSupp) sur le userform.
ce textbox indiquerait le nombre de "SUPPRIMER" trouvé dans la colonne A...

Donc la manip est que, je lance la macro,
dans le nouveau Textbox (NbSupp) est inscrit 0,
je tape 47521, je clicke sur le bouton Chercher,
elle me trouve ce num dans la colonne A,
m'indique les infos dans les autres cellules de cette ligne,
je clicke sur bouton Supprimer, et dans la cellule selectionnée
(A47522 j'ai une ligne de titre) est inscrit SUPPRIMER.
je me retrouve au debut du userform, pret a retaper un numero,
et dans le nouveau Textbox (NbSupp) est inscrit 1...

je tape 142... blabla... le num est remplacé par SUPPRIMER
NbSupp = 2

je tape 41236... NbSupp = 3

je ferme tout. je dors. je me reveille...

je lance ma macro et NbSupp = 3

...

Voila en esperant avoir ete clair...
Quel est le bout de code a insere ??? ou ???
Faut-il un Private Sub ?

Merci d'avance pour votre aide.

Tinou

Ps : Merci à Lolote


Avatar
tinou
:-)
moi aussi je me comprends pas...

je vais essayer d'etre moins clair... ci dessous la macro
qui fonctionne.

je lance ma macro : UserForm1.Show

j'ai un userform avec un bouton chercher, un bouton annuler et
un textbox N°Ordre :
Private Sub UserForm_Initialize()
UserForm1.Height = 150
End Sub
Private Sub Cmd_Annuler_Click()
Unload Me
End Sub

j'ai un fichier d'adresse, dans la colonne A y a des nombre.
le but est que je tape un numero, la macro recherche ce num
est va sur la cellule concernee :
Private Sub Cmd_Chercher_Click()
Columns("A:A").Select
Selection.Find(What:=Txt_N°Ordre, After:¬tiveCell, LookAt _
:=xlWhole, SearchOrder:=xlByColumns).Activate

le userform s'agrandit : UserForm1.Height = 312
m'indique le contenu des autres cellules situees sur la meme ligne
que le num.

il y a un bouton Annuler :
Private Sub Cmd_AnnulerRecherche_Click()
Range("A1").Select
Unload Me
UserForm1.Show
End Sub

il y a un bouton Supprimer qui quand je click dessus, inscrit SUPPRIMER
dans la cellule du numero precedement tapé :
Private Sub Cmd_SupRecherche_Click()
ActiveCell.FormulaR1C1 = "SUPPRIMER"
Unload Me
UserForm1.Show
End Sub

et je recommence avec mon userform petit...

***
donc ma question d'hier, est que je voudrais rajouter
un nouveau Label (Lbl_NbSupp) qui m'indiquerait le nombre
du mot SUPPRIMER dans la colonne A...

est savoir ou le placer ??

Alors c'est moins claire ? :-)
Merci d'avance

Tinou
Avatar
tinou
bonjour Isabelle,

je n'arrive pas a la placer ta formule dans mes codes...
ca fait des erreurs...
pourtant ca a l'aire d'etre la bonne formule !!??

Merci encore pour ton aide

Tniou
Avatar
Daniel
Bonjour.
Pour le placer, tu le places où tu veux ? Pour sa valeur, regarde la réponse
d'Isabelle.
Cordialement.
Daniel
"tinou" a écrit dans le message de news:

:-)
moi aussi je me comprends pas...

je vais essayer d'etre moins clair... ci dessous la macro
qui fonctionne.

je lance ma macro : UserForm1.Show

j'ai un userform avec un bouton chercher, un bouton annuler et
un textbox N°Ordre :
Private Sub UserForm_Initialize()
UserForm1.Height = 150
End Sub
Private Sub Cmd_Annuler_Click()
Unload Me
End Sub

j'ai un fichier d'adresse, dans la colonne A y a des nombre.
le but est que je tape un numero, la macro recherche ce num
est va sur la cellule concernee :
Private Sub Cmd_Chercher_Click()
Columns("A:A").Select
Selection.Find(What:=Txt_N°Ordre, After:¬tiveCell, LookAt _
:=xlWhole, SearchOrder:=xlByColumns).Activate

le userform s'agrandit : UserForm1.Height = 312
m'indique le contenu des autres cellules situees sur la meme ligne
que le num.

il y a un bouton Annuler :
Private Sub Cmd_AnnulerRecherche_Click()
Range("A1").Select
Unload Me
UserForm1.Show
End Sub

il y a un bouton Supprimer qui quand je click dessus, inscrit SUPPRIMER
dans la cellule du numero precedement tapé :
Private Sub Cmd_SupRecherche_Click()
ActiveCell.FormulaR1C1 = "SUPPRIMER"
Unload Me
UserForm1.Show
End Sub

et je recommence avec mon userform petit...

***
donc ma question d'hier, est que je voudrais rajouter
un nouveau Label (Lbl_NbSupp) qui m'indiquerait le nombre
du mot SUPPRIMER dans la colonne A...

est savoir ou le placer ??

Alors c'est moins claire ? :-)
Merci d'avance

Tinou


Avatar
Daniel
Essaie :

Private Sub UserForm_Initialize()
Label1.Caption = Application.CountIf(Sheets("Feuil1").Range("A:A"),
"SUPPRIMER")
End Sub

en adaptant au code existant.
Daniel
"tinou" a écrit dans le message de news:

bonjour Isabelle,

je n'arrive pas a la placer ta formule dans mes codes...
ca fait des erreurs...
pourtant ca a l'aire d'etre la bonne formule !!??

Merci encore pour ton aide

Tniou



Avatar
tinou
yeah c'est gentil de m'aider...

j'ai :
Private Sub UserForm_Initialize()
UserForm1.Height = 150
Lbl_NbSupp.Caption = Application.CountIf(Sheets("Feuil1").Range("A:A"),
"SUPPRIMER")
End Sub

et ca me fait : erreur d'execution '9': l'indice n'appartient pas à la
selection.

????
Merci encore Daniel
Tinou


Essaie :

Private Sub UserForm_Initialize()
Label1.Caption = Application.CountIf(Sheets("Feuil1").Range("A:A"),
"SUPPRIMER")
End Sub

en adaptant au code existant.
Daniel
"tinou" a écrit dans le message de news:

bonjour Isabelle,

je n'arrive pas a la placer ta formule dans mes codes...
ca fait des erreurs...
pourtant ca a l'aire d'etre la bonne formule !!??

Merci encore pour ton aide

Tniou








Avatar
tinou
petit detail...

quand je clicke sur debogage,
il va dans le module est surligne en jaune : UserForm1.Show
Avatar
Daniel
Peux-tu mettre ton classeur sur www.cjoint.com ?
Daniel
"tinou" a écrit dans le message de news:

petit detail...

quand je clicke sur debogage,
il va dans le module est surligne en jaune : UserForm1.Show



Avatar
tinou
pff j'etais partis pour le faire...
j'ai un fichier excel qui contient toutes mes macros...
donc je supprimais les modules qui servent a rien...
et toujours dans ce fichier je copier des lignes d'adresse,
je lance la macro pour voir et là, ca marche. !

Lbl_NbSupp = Application.CountIf(Sheets("Feuil1").Columns("A:A"), "SUPPRIMER")
le probleme doit etre dans : sheets("feuill1") ???
car moi je lance la macro a partir d'un autre fichier !
donc faudrait un truc qui prenne en compte le classeur activer...
et qui est une feuille qui s'appelle pas forcement "feuill1"

Merci pour ton aide.

je te met le classeur qui contient la macro + quelques adresses...
il faudra donc que tu colles ces adresses sur un autre classeur.

http://cjoint.com/?eAmCfVehjk

merci

tinou
1 2