Tester un champs dans une macro (EXCEL2013)
Fermé
JL00700
Messages postés
90
Date d'inscription
lundi 4 juin 2012
Statut
Membre
Dernière intervention
1 novembre 2019
-
21 févr. 2018 à 19:05
yg_be Messages postés 23359 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 29 novembre 2024 - 2 mars 2018 à 19:57
yg_be Messages postés 23359 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 29 novembre 2024 - 2 mars 2018 à 19:57
A voir également:
- Tester un champs dans une macro (EXCEL2013)
- Flash drive tester - Télécharger - Divers Utilitaires
- Tester son pc - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Macro word - Guide
- Tester composant pc - Guide
2 réponses
yg_be
Messages postés
23359
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
29 novembre 2024
Ambassadeur
1 556
21 févr. 2018 à 20:17
21 févr. 2018 à 20:17
bonsoir, peux-tu partager ton fichier?
yg_be
Messages postés
23359
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
29 novembre 2024
Ambassadeur
1 556
23 févr. 2018 à 09:47
23 févr. 2018 à 09:47
il me semble que tu confonds deux concepts:
- les champs de ton formulaire (Me.E7)
- les cellules dans les feuilles Access (Range("E7"))
peux-tu partager ton fichier?
- les champs de ton formulaire (Me.E7)
- les cellules dans les feuilles Access (Range("E7"))
peux-tu partager ton fichier?
23 févr. 2018 à 08:00
Je m'aperçois ce jour que ma réponse d'hier n'a pas fonctionnée !!!
Voici le contenu :
Sub AlimentationBaseDonnées()
'
' AlimentationBaseDonnées Macro
'
'Loop
‘Tester la saisie des champs du formulaire’
If Len (Me.E7) = 0 Then
lblMessage = "Veuillez saisir la date d’opération"
Me.E7.SetFocus
ElseIf Len (Me.E9) = 0 Then
lblMessage = "Veuillez sélectionner une opération dans la liste"
Me.E9.SetFocus
ElseIf Len (Me.E11) = 0 Then
lblMessage = "Veuillez sélectionner une catégorie dans la liste"
Me.E11.SetFocus
ElseIf Len (Me.E13) = 0 Then
lblMessage = "Veuillez sélectionner un poste dans la liste"
Me.E13.SetFocus
ElseIf Len (Me.E17) = 0 Then
lblMessage = "Veuillez sélectionner un support dans la liste"
Me.E17.SetFocus
ElseIf Len (Me.E21) = 0 Then
lblMessage = "Veuillez saisir un montant"
Me.E21.SetFocus
Else
Sheets("Base").Select
ActiveSheet.Unprotect "toto"
Rows("2:2").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
Range("A2").Select
ActiveCell.FormulaR1C1 = "=R[1]C+1"
Range("C2").Select
ActiveCell.FormulaR1C1 = "=IF(RC[5]=""CDD"",EOMONTH(RC[-1],0),RC[-1])"
Range("L2").Select
ActiveCell.FormulaR1C1 = "=IF(RC[-8]=""Dépense"",R[1]C-RC[-2],R[1]C+RC[-2])"
Range("M2").Select
ActiveCell.FormulaR1C1 = _
"=IF(AND(RC[-9]=""Dépense"",RC[-5]=""CDD"",RC[-10]<>RC[-2]),R[1]C,IF(AND(RC[-9]=""Dépense"",RC[-5]=""CDD"",RC[-10]=RC[-2]),R[1]C-RC[-3],IF(AND(RC[-9]=""Dépense"",RC[-5]<>""CDD""),R[1]C-RC[-3],IF(RC[-9]=""Recette"",R[1]C+RC[-3],0))))"
Range("M3").Select
Sheets("CreOp").Select
Range("E7").Select
Selection.Copy
Sheets("Base").Select
Range("B2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("CreOp").Select
Range("E9").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Base").Select
Range("D2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("CreOp").Select
Range("E11").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Base").Select
Range("E2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("CreOp").Select
Range("E13").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Base").Select
Range("F2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("CreOp").Select
Range("E15").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Base").Select
Range("G2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("CreOp").Select
Range("E17").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Base").Select
Range("H2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("CreOp").Select
Range("E19").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Base").Select
Range("I2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("CreOp").Select
Range("E21").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Base").Select
Range("J2").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("CreOp").Select
Application.CutCopyMode = False
Range("E7,E9,E11,E13,E15,E17,E19,E21").Select
Range("E21").Activate
Selection.ClearContents
Sheets("Base").Select
ActiveSheet.Protect Password:="toto", DrawingObjects:=True, Contents:=True, Scenarios:=True
End If
End Sub
23 févr. 2018 à 18:34
Voici l'image de ma feuille Excel dans laquelle se trouve mon formulaire.
J'espère que cela va te permettre d'avoir une meilleurs visualisation de ma requête.
Encore merci de ton attention.
Cordialement
Jean
https://www.cjoint.com/c/HBxrFg0hEv7
23 févr. 2018 à 18:54
2 mars 2018 à 16:27
Je n'ai pas trouvé de solution idéale, je me suis réfugié sur une astuce donnée par un autre membre du forum en utilisant la mise en forme conditionnelle.
Encore merci de ton attention
Cordialement
2 mars 2018 à 19:57