Macro Excel

Barnabetg Messages postés 5 Statut Membre -  
PHILOU10120 Messages postés 6515 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

J'ai réalisé un fichier Excel en mode formulaire avec des champs de saisie et des champs de sélection dans un liste. Je veux mettre une macro qui non seulement permet de vider les cellules des champs de saisie/sélection mais qui en plus va stocker sur une autre feuille et par ordre chronologique les données vidées. Merci de m'aider pour cette macro

A voir également:

1 réponse

PHILOU10120 Messages postés 6515 Date d'inscription   Statut Contributeur Dernière intervention   827
 
Bonjour

Une macro qu'il faudra adapter à vos besoins

Dim myRange As Range

Sub entrer1()
'
' entrer1 Macro
' Macro enregistrée le 28/01/2013 par Philou10120
'
'
Windows("non de votre fichier_.XLS").Activate
Sheets("nom de la feuille").Select
Application.Goto Reference:="ANCRE1" 'cellule de positionnement"
Seets("nom de la feuille").Select
ActiveSheet.Unprotect 'oter la protection
Sheets("ENTRER").Select 'feuille sur la quelle il y a les cellule à copier dans la base
Set myRange = Worksheets("entrer").Range("controle_entree") 'cellule servant à contrôler que les informations à entrer sont correctes
If myRange = 1 Then
ActiveSheet.Unprotect
Range("ligne_entrée").Select 'sélectionne toute la ligne de cellules à copier
Selection.Copy
Application.Goto Reference:="ANCRE3" 'cellule d'ancrage se trouvant en haut de la base de données
Selection.End(xlDown).Select ' descend à la dernière ligne de la base
ActiveCell.Offset(1, 0).Activate 'descend à la ligne suivante
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False 'colle les données sur cette ligne
Sheets("ENTRER").Select ' retourne sur la feuille entrer
Range("efface_entrée").Select 'efface les données de la feuille entrer
Application.CutCopyMode = False
Selection.ClearContents
Range("ancre8").Select
Range("ancre7").Select
ActiveSheet.Protect DrawingObjects:=False, Contents:=True, _
Scenarios:=True 'remet la protection sur la feuille
End If
Sheets("nom de la feuille ou il y a la base de données").Select
Application.Goto Reference:="ANCRE1" 'cellule d'ancrage
ActiveSheet.Protect DrawingObjects:=False, Contents:=True, _
Scenarios:=True
Sheets("ENTRER").Select
Application.Goto Reference:="ANCRE7"
ActiveSheet.Protect DrawingObjects:=False, Contents:=True, _
Scenarios:=True
End Sub

pour le contrôle des entrées sur la feuille entrer je contrôle par formule chaque cellule d'information et le résultat doit être 1 pour vrai et j'additionne les cellules et le nombre trouvé doit correspondre au nombre de cellule contrôlé si c'est Ok la cellule de contrôle égale 1 donc vrai et la copie de la ligne est réalisable

J'espère que cela vous aidra
0