Macro excel saisie de données

Résolu/Fermé
volcolm Messages postés 13 Date d'inscription vendredi 25 janvier 2013 Statut Membre Dernière intervention 6 février 2013 - 26 janv. 2013 à 13:16
volcolm Messages postés 13 Date d'inscription vendredi 25 janvier 2013 Statut Membre Dernière intervention 6 février 2013 - 26 janv. 2013 à 20:09
Bonjour tout le monde !

Voilà mon problème, je me suis mis à la programmation en VBA pour créer une macro excel dans le cadre d'un projet. Mais voilà je suis comme qui dirait perdu, désespéré, énervé et à bout ! (Bon d'un côté j'ai jamais était très fan de ce genre de chose)

C'est donc pour cela que je vous demande de l'aide ! Qui pourrait me dire ce qui ne va pas dans mon programme, ce qui est faux, comment l'améliorer et surtout comment le faire marcher ??? (est il au moins proche de quelque chose qui marche ???)

Le but de la macro serait de permettre à l'opératrice de sélectionner son nom parmi une liste, ensuite d'entrer la quantité produite et les rebuts. Tout cela serait ensuite envoyé dans une base de donnée sur une feuille excel, avec en même temps la saisie automatique de la date et heure.

Voilà à peu près tout mon problème, ci-dessous vous trouverez mon « programme », si jamais quelqu'un veut bien m'aider je suis disponible s'il manquait des précisions !

Merci à vous

Cordialement,

Yann

Module:

Sub initialisation_saisiqte()

With saisiqte

.Opérateur.RowSource = "'paramètres'!" & Sheets("paramètres").Range("A1").CurrentRegion.Address
.date_saisie.Caption = Format(Now, "dd/mm/yy hh:mm")

End With

End Sub

Sub validation_saisiqte()

Dim qte As Integer

With qte

If .Opérateur.Value = "Nom du déclarant" Or .Opérateur.Value = "" Then
MsgBox "Veuillez vous identifier", vbOKOnly, "Opérateur manquant"
.Opérateur.SetFocus
Exit Sub
ElseIf .qte.Value = "" Or .qte.Value = "" Then
MsgBox "Veuillez saisir la quantité d'armature produite", vbOKOnly, "quantité manquante"
.qte.SetFocus
Exit Sub
End If

.Hide
traitement_saisiqte

End With

End Sub

Sub traitement_saisiqte()

Dim ligne As Integer


With ActiveWorkbook.Sheets("données")

.Unprotect

If Not IsEmpty(.Range("A8")) Then
ligne = .Range("A7").End(xlDown).Row + 1
Else
ligne = 8
End If

'Placer les valeurs sur le tableau excel'

.Cells(ligne, 2).Value = Format(Date, "dd/mm/yy")
.Cells(ligne, 3).Value = Format(Time, "hh:mm")
.Cells(ligne, 4).Value = saisiqte.Opérateur
.Cells(ligne, 6).Value = saisiqte.qte

End Sub

Objet "saisie"

Private Sub CommandButton1_Click()

initialisation_quantite
quantite.Show

End Sub


Objet "données"

Private Sub CommandButton3_Click()

Dim ligne As Integer

With Sheets("données")
If Not IsEmpty(.Range("A8")) Then
ligne = Range("A7").End(xlDown).Row
Else
ligne = 8
End If
.Unprotect
.Rows(ligne + 1).Delete Shift:=xlUp
ActiveWindow.ScrollRow = ligne
.Protect DrawingObjects:=True, contents:=True, Scenarios:=True
End With

End Sub


FIN DU PROGRAMME

P.S.: L'UserForm est aussi défini, le problème est que la macro se lance bien, l'userform s'affiche et je peux tout saisir, mais le fait de cliquer sur le bouton OK ne le referme pas et aucune donné n'est envoyée dans la feuille excel.

Merci pour votre aide
A voir également:

5 réponses

lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
26 janv. 2013 à 13:46
Bonjour,
Ce serait plus facile si tu déposais ton classeur (sans donnée confidentielle) sur Cjoint.com (ou autre) et mettre le lien dans un poste suivant
A+
1
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
Modifié par lermite222 le 26/01/2013 à 18:56
Re,
Le code relatif à un UserForm doit en principe, être mis dans le module de l'UserForm et pas dans un Module.
Ton classeur en retour
A+
NB : Reste le N° de semaine, je ne sais pas ce que tu veux et l'équipe..
Pour l'équipe serait bien de mettre la référence dans la page Paramètres en colonne B
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
1
volcolm Messages postés 13 Date d'inscription vendredi 25 janvier 2013 Statut Membre Dernière intervention 6 février 2013
26 janv. 2013 à 15:10
https://www.cjoint.com/?0AApjhrpUUK

ci-dessous le fichier Excel :) merci encore
0
volcolm Messages postés 13 Date d'inscription vendredi 25 janvier 2013 Statut Membre Dernière intervention 6 février 2013
26 janv. 2013 à 15:11
done :) merci pour le tuyau
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
volcolm Messages postés 13 Date d'inscription vendredi 25 janvier 2013 Statut Membre Dernière intervention 6 février 2013
Modifié par volcolm le 26/01/2013 à 20:29
Merci beaucoup !

Pour l'équipe et la semaine, ainsi que pour plusieurs autres choses comme le traitement des données je me débrouillerais, le travail m'a déjà été bien suffisamment mâché là! ;)

Merci encore bonne soirée

A+
0