Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

captainejack

XLDnaute Occasionnel
Bonjour le forum

Serait il possible de m'aider sur un code vba
Sur le formulaire joint , j'ai ajouter un bouton pour effacer les données de mon tableau par l'intermédiaire de L'USF. Cette USF est une partie de celui que j'utilise et que je voudrais modifier (Taille du fichier trop important ,même zipé)
Sur les 4 cellules, 2 seulement s'effacent, il y a un soucis sur la cellule où la date s'affiche et la quantité
Je n'arrive pas à cerner ce problème, car j'utilise ce code sur un autre USF, où j'ai seulement le problème au niveau de la date. A l'effacement de celle ci , sur mon tableau de donnée, dans la cellule date, j'ai ##### et sur celui de la pièce jointe 00:01:1900
Donc je suppose que mon code pour l'effacement n'est pas tout fait juste et je n'arrive pas à trouver d'où vient le problème
Merci pour votre aide
Cordialement
Dan
 

Pièces jointes

Re : Aide code VBA

Salut JackDaniels..

Okii... je regarde ton bidule ... es ce que tu parle de ton bouton "effacer" => B_Effacer_Click.... sous ce btn ya le code suivant...
Calendar1.Value = ""
DésignationArticle.Value = ""
Quantité.Value = ""
EntréeSortie.Value = ""
Je ne comprends pas trop ton message.. Parce que tu parle de cell... mais en fait tu efface le contenu de contrôle... Ouin. C pas clairs. De j’ai exécuté ton code pas à pas ... il efface bien le contenue des contrôles...et no de cell

Un avis comme ca tu fais ce que tu veux "Capi" mais a mon humble avis Du tool Box N'utilise pas "Contrôle de formulaire" utilise "Contrôle Activex" après tu n'as qu'a dbl+clic sur le control de ton choix et tu arrive directement dans le code VBA ... bref donne moi plus d'info et je vais modifier ton Excel Oki.....

RedCheef (ps je te lache pas ... ici il est exactement 12:58 au Quebec je sais pas si t couché mais bref je vais attendre ton mess)
 
Re : Aide code VBA

Bjr RedCheef et Bjr le Québec Bsr le Forum
Merci por ton mesage Ici il est 20h49 et je ne suis pas prêt de me coucher...
Je parle effectivement de mon bouton "Effacer"
Si tu as regardé le fichier, si tu fais une validation de donnée dans le tableau, par l'intermédiaire du bouton "Effacer"je voudrais effacer les données . Avec mon code , ça marche pour "ETAT" et "DESIGNATION ARTICLE", dans le tableau de donnée, et ça ne fonctionne pas pour le reste"DATE" et "QUANTITE" .Dans mon tableau , les données s'éffacent, sauf date et quantité. Il efface le contenu de mes controles et dans mon tableau , il n'y a que "ETAT" et "DESIGNATION ARTICLE" qui s'effacent.
@+
Dan
 
Re : Aide code VBA

Bjr Habitude & le forum
Je te remercie pour ton aide
J'ai essayé le code et il fonctionne.Mais ce n'est pas tout à fait ce que je voulais....
Ton code me supprime totalement la ligne sur mon tableau de donnée ou je souhaite l'inclure et en même temps toutes les formules. Le but est de juste effacer les données que je souhaite entrée par l'intermédiaire de l'USF, pour pouvoir éventuellement les modifier si je me trompe lors de la saisie dans l'USF, ou faire une mise à jour chaque année.
Comprends tu ce que je veux dire
C'est juste effacer les données desTextBox de l'USF qui correspondent à certaines cellules de mon tableau de données.
En te remerciant encore de ton aide et de tous ceux qui sont sur le Forum
Cordialement
Dan
 
Re : Aide code VBA

Je vois que tu efface tes controles
Quand tu valide tu mets tes controle dans ta ligne.

Or ton objet calendrier ne peut pas être vide

Donc je te conseil de créer des variables à laquelles tu donne la valeur du controle

Quand tu efface, tu efface la valeur de la variable.

Ainsi tu inscrit dans ta ligne, la valeur de la variable et non du controle.

Pas sur que c'est claire
 
Re : Aide code VBA

Re-Salut Cap'tain Dan

Ca va ce matin... Sorry pour Hier je suis arrivé a la maison puis chu aller me couché gros dodo... Bref Oki Oki je comprends la .... Ta demande..Oki Bon Bref tu veux seulement effacer la col B et D de l'onglet Feuil3 "that it that All" Bon voila du code qui va directement dans ton bouton "Private Sub B_Effacer_Click()"
Bon avant Dan ya 2 bout de code que je te donne le 1ier c pas du beau code ... tu vas voir c plus pour t'aider à comprendre ....

1- tu peux pour le moment garder ce code dans le Bouton
Calendar1.Value = ""
DésignationArticle.Value = ""
Quantité.Value = ""
EntréeSortie.Value = ""
2- copie ce code ... suite au #1
Worksheets("Feuil3").Activate
Worksheets("Feuil3").Range("B1").Activate
Range("B1").Select
Range("B6").Value = ""
Range("B7").Value = ""
Range("B8").Value = ""
Range("B9").Value = ""
Range("B10").Value = ""

Range("D1").Select
Range("D6").Value = ""
Range("D7").Value = ""
Range("D8").Value = ""
Range("D9").Value = ""
Range("D10").Value = ""
*** OUI OUI je sais c pas beau ce code mais pour ce que tu demande ca fais exactement ce que tu demande .... Le but est de te montrer que tu peux Loopé dans tes cells,.... Bon regarde ce qui suit... tel que notre Chum "Habitude" ta suggéré
*** tu peux copier ce code et le remplacer par ce qui est déjà dans « Private Sub B_Effacer_Click » .. ca c plus du beau code a avoir

Private Sub B_Effacer_Click()
'Déclaration de variables:
Dim iRow As Integer
Dim iFin As Integer ' cette variable n'est pas nécessaire mais si tu va pas à pas
' Elle peut dans le futur te donner des idées pour l'utilisation

'Activation sur l'onglet Feuil3
Worksheets("Feuil3").Activate
'Activation de la cell B1 sur l'onglet Feuil3
Worksheets("Feuil3").Range("B1").Activate
'ici tu te positionne directement sur la cell
Range("B1").Select

iFin = Range("B6").End(xlDown).Row
iRow = 6

Calendar1.Value = ""
DésignationArticle.Value = ""
Quantité.Value = ""
EntréeSortie.Value = ""

' ici je n'utilise pas iFin mais plus la ligne de commande suivante c comme tu veux
Do While iRow <= Range("B6").End(xlDown).Row
Range("B" & iRow).Select
Range("B" & iRow).Value = ""

iRow = iRow + 1
Loop

' pour la col "date" soit
iRow = 6
' va loopé jusqu'a la fin de liste mais il ne faut pas de cell vide entre ton jeux de data...
Do While iRow <= Range("D6").End(xlDown).Row
'pas necessaire mais c nice de le voir passer cell par cell
Range("D" & iRow).Select<
' ICI il efface ta cell
Range("D" & iRow).Value = ""

iRow = iRow + 1
Loop

end sub

' Bref voila essaye ca mon Capt'ain Dan and Have Fun
Sylvain AS RedCheef du beau Quebec Full de neige
 
Re : Aide code VBA

Bonjour Red Cheef , Habitude et le forum
Comment va le Canada?
J'ai l'impression de me compliquer la chose quand il y a plus simple....
A votre avis, il ne serait pas plus simple de remplacer mon objet calendrier par un TextBox où la date du jour s'affiche à l'ouverture de L'USF.Mais comme je suis un néophite en VBA, je n'ai jamais réussi à trouver ce code "date"
Je pense, avec cette idée , je pourrais utiliser le code que j'avais trouvé
Qu'en pensez vous ?
Les codes de Red Cheef sont très intéressants; je vais les garder dans ma "bibliothèque"
Je vous remercie de votre aide et Red Cheef profite bien de la neige...
Slts
Dan
J'ai supprimer l'objet calendrier et en cherchant un peu j'ai réussi de mettre la date du jour à l'ouverture de L'USF. Pour effacer , ça marche avec mon code. Mais par contre , comment garder la date du jour après chaque validation? Je suis obliger de fermer et réouvrir l'USF à chaque enreigistrement et ça c'est un peu embêtant...Comment faire??
Slts
Dan
 

Pièces jointes

Dernière édition:
Re : Aide code VBA

Salut Dan
Oki Moi ce que je ne comprends pas c ton USF est ce que tu parle de ton WorkBook le fichier Excel... le xls.... si non regarde bien le code suivant au sujet de ta date ta date.
Exemple :

Imagine que sur l'onglet feuil3 sur la cell A1... et ca peut être la ou tu veux ...
Sub toto ()
Worksheets("Feuil3").Activate
Worksheets("Feuil3").Range("A1").Activate
Range("A1").Value = Date '(MAINTENANT())

' bla bla bla ... le call sur une autre function ou je ne sais pas moi mais dans ce code tu ' supp. la cell A1 OK

' ici ba tu la re-plugg
Range("c39").Value = Date
‘Voila BING BANG

end sub
*** toto peut être ton bouton une private ou public "function" c comme tu veux
*** Un conseil comme ca .. Je regarde tes 3 modules ... tu devrais garder Module1 puis supprimer les 2 autres MAIS avant assure toi de copier coller le code dans Module1 ;-)

Moi je ne sais pas comment va le CANADA mais le Quebec est dans la neige par dessus la tête c pas drôle. Je sais que par chez vous c le CANADA mais si tu savais l'ouest canadiens c PAS pour un francophone je t'assure ils ne nous aiment pas ! le Quebec nous on est plus sympa que Les autre province.. je vais jamais a toronto ou ottawa c trop loin puis en plus ils cherchent a casser la gueule au franco c pas des joke. Bref c a montréal que la vie est belle ya plein de francais comme toi ici jai beaucoup de chum de l'Europe ici... Ha oui si nous pourrions avoir un président comme le tien "Sarcozy" Wow Men! ya d'la gueule le gars ... c pas une tit fillette comme notre premier ministre a la con. Ok je dois retourner travailler ... pas l'choix Ciao n'hésites pas si tas des questions ..
Sylvain
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
6
Affichages
310
Réponses
3
Affichages
152
Réponses
6
Affichages
173
Réponses
7
Affichages
183
  • Question Question
Microsoft 365 Problème de date
Réponses
5
Affichages
170
Retour