VBA, Macro User Form

Résolu/Fermé
caillasse147 Messages postés 71 Date d'inscription lundi 26 décembre 2016 Statut Membre Dernière intervention 28 juin 2017 - 13 avril 2017 à 14:16
cs_Le Pivert Messages postés 7822 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 16 septembre 2022 - 13 avril 2017 à 15:58
Bonjour à tous,

Comme vous pouvez le voir dans mon fichier ci-dessous, dont le but est la gestion des palettes dans mon entreprise,

J'aimerais que grâce à l'user form créé et à l'entrée des données dans ce dernier, je puisse remplir mon tableau que l'on trouve en cliquant sur mon bouton "données"

J'y suis presque mais mon code VBA me relève une erreur et je n'arrive pas à la modifier pour que ça fonctionne parfaitement....

Merci d'avance

Ps : voici le lien : https://www.petit-fichier.fr/2017/04/13/faux/

1 réponse

cs_Le Pivert Messages postés 7822 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 16 septembre 2022 716
13 avril 2017 à 15:02
Bonjour,

Je ne vois pas de feuille nommée Dessin!
Il faut rendre la feuille données visible!
Voilà

Private Sub CommandButton1_Click()

   ' Sheets("Dessin").Select
    Rows("1:1").Select
    Selection.AutoFilter
ThisWorkbook.Sheets("données").Visible = True
Sheets("données").Select

'Test si toutes les cases de base sont renseignées
If ComboBox1 = "" Or TextBox1 = "" Or TextBox2 = "" Or TextBox4 = "" Or TextBox5 = "" Then
            MsgBox ("Merci de Remplir l'ensemble des cases nécessaires.")
Else


'Recopier les informations à la suite
'si première ligne de saisie
If Range("A2") = "" Then
Range("A2").Select
n = ActiveCell.Row
Else
'pour toute les autres lignes que la première
Range("A1").End(xlDown).Offset(1, 0).Select
n = ActiveCell.Row
End If

'Choix des cellules de destination

Range("C" & n) = CDate(TextBox1.Value)
Range("D" & n) = TextBox2.Value

Range("E" & n) = ComboBox1.Value

Range("F" & n) = TextBox4.Value
Range("G" & n) = TextBox5.Value

Range("A" & n) = "=MONTH(RC[2])"
Range("B" & n) = "=TEXT(WEEKDAY(RC[1]),""jjjj"")"
       
ThisWorkbook.Save

Me.Hide
Sheets("Accueil").Select
End If

End Sub


1
caillasse147 Messages postés 71 Date d'inscription lundi 26 décembre 2016 Statut Membre Dernière intervention 28 juin 2017
13 avril 2017 à 15:10
Bonjour,

Merci pour cette réponse rapide mai cela ne fonctionne pas, j'ai un message d'erreur qui apparait :

"erreur d'exécution 1004
la commande n'a pas pu être exécutée avec la plage spécifiée
Sélectionnez une seule cellule dans la plage et réessayer"

et en cliquant sur "déboguer", cela me surligne en jaune le Selection.Autofilter

Merci
0
cs_Le Pivert Messages postés 7822 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 16 septembre 2022 716 > caillasse147 Messages postés 71 Date d'inscription lundi 26 décembre 2016 Statut Membre Dernière intervention 28 juin 2017
13 avril 2017 à 15:53
Tu supprimes ces 2 lignes:

 Rows("1:1").Select
    Selection.AutoFilter
0
caillasse147 Messages postés 71 Date d'inscription lundi 26 décembre 2016 Statut Membre Dernière intervention 28 juin 2017
13 avril 2017 à 15:55
Eh bien ç m'a l'air de fonctionner parfaitement!!!

merci pour ta précieuse aide

Bonne après-midi
0
cs_Le Pivert Messages postés 7822 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 16 septembre 2022 716 > caillasse147 Messages postés 71 Date d'inscription lundi 26 décembre 2016 Statut Membre Dernière intervention 28 juin 2017
13 avril 2017 à 15:58
Voilà le classeur corrigé:

http://www.cjoint.com/c/GDnn6nSC3UQ
0