Bonjour à tous !
Je suis sous Access 2010.
J’ai une zone de texte qui contient un modèle de texte (donc à compléter) dans un formulaire.
J’ai un bouton pré-remplir qui me permet, avec un clic, de pré-remplir beaucoup de champs de mon texte
Malheureusement, je ne peux pas pré-remplir tous les champs de mon texte car certaines informations ne sont disponibles dans aucune des bases de données.
Pour pallier à cela, j’oblige les utilisateurs de saisir les informations qui manquent à l’aide des inputbox qui leurs décrit un peu la nature de l’information qu’il faut insérer.
Mais cette méthode pose problème à certains utilisateurs débutant.
Ainsi je voudrais mettre en surbrillance l’endroit où il faut insérer l’information qui manque dans ma zone texte à chaque fois qu’un inputbox apparait pour demander une information, Comme ça l’utilisateur pourra lire le passage et il saura forcément l’information à insérer.
Est-ce que quelqu’un sait si c’est faisable ? si oui est ce que vous pouvez m’orienter svp ? Merci !
Voici mon code pour pré remplir mon texte modèle et exiger aux utilisateurs, à l’aide des inputbox, de compléter ce qui manque.
Code :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142
| Public Sub trfText(RefDOSSIER As String)
Dim Text_Annonce As String
Dim Position_Ouv As Long
Dim Position_Fin As Long
Dim Extract_NOM As String
Dim Re_Test As Recordset
Dim Re_Test_Pic As Recordset
Dim NewText As String
Set Re_Test = CurrentDb.OpenRecordset("SELECT TDAT_Paragraphes.* FROM TDAT_Paragraphes WHERE (((TDAT_Paragraphes.Nature)='" & Me.zdlChoisirNlac & "'))")
Set Re_Test_Pic = CurrentDb.OpenRecordset("SELECT * FROM T_DOSSIERS WHERE ((([T_DOSSIERS]![RefDOSSIER])='" & Me.ZdtSaisirMotCle & "'))")
If IsNull(Me.zdtAssemblag) = True Then
Text_Annonce = ""
Else
Text_Annonce = Me.zdtAssemblag
End If
Position_Ouv = 1
Do
Position_Ouv = InStr(Position_Ouv + 1, Text_Annonce, "[[")
If Position_Ouv = 0 Then Exit Do
Position_Fin = InStr(Position_Ouv, Text_Annonce, "]]")
Extract_NOM = Mid(Text_Annonce, Position_Ouv + 2, Position_Fin - Position_Ouv - 2)
Select Case Extract_NOM
' **********************C_VALEUR_ANC******************************
Case "C_VALEUR_ANC"
If IsNull(Re_Test_Pic.Fields("C_VALEUR_ANC")) = True Then
NewText = ""
Else
NewText = Re_Test_Pic.Fields("C_VALEUR_ANC")
End If
' ************************C_VALEUR_NOUV****************************
Case "C_VALEUR_NOUV"
If IsNull(Re_Test_Pic.Fields("C_VALEUR_NOUV")) = True Then
NewText = ""
Else
NewText = Re_Test_Pic.Fields("C_VALEUR_NOUV")
End If
' **********************MT_UNITAIRE******************************
Case "MT_UNITAIRE"
If IsNull(Re_Test_Pic.Fields("MT_UNITAIRE")) = True Then
NewText = ""
Else
NewText = Re_Test_Pic.Fields("MT_UNITAIRE")
End If
' ************************D_DEBUT_OST****************************
Case "D_DEBUT_OST"
If IsNull(Re_Test_Pic.Fields("D_DEBUT_OST")) = True Then
NewText = ""
Else
NewText = Re_Test_Pic.Fields("D_DEBUT_OST")
End If
' ************************D_FIN_OST****************************
Case "D_FIN_OST"
If IsNull(Re_Test_Pic.Fields("D_FIN_OST")) = True Then
NewText = ""
Else
NewText = Re_Test_Pic.Fields("D_FIN_OST")
End If
' ***********************RVN_RATIO_EXERCICE*****************************
Case "RVN_RATIO_EXERCICE"
If IsNull(Re_Test_Pic.Fields("RVN_RATIO_EXERCICE")) = True Then
NewText = ""
Else
NewText = Re_Test_Pic.Fields("RVN_RATIO_EXERCICE")
End If
' **********************D_EX_DATE******************************
Case "D_EX_DATE"
If IsNull(Re_Test_Pic.Fields("D_EX_DATE")) = True Then
NewText = ""
Else
NewText = Re_Test_Pic.Fields("D_EX_DATE")
End If
' ********************D_REGLT_CASH ********************************
Case "D_REGLT_CASH"
If IsNull(Re_Test_Pic.Fields("D_REGLT_CASH")) = True Then
NewText = ""
Else
NewText = Re_Test_Pic.Fields("D_REGLT_CASH")
End If
' **********************DIVIDENDE_UNIT******************************
Case "DIVIDENDE_UNIT"
If IsNull(Re_Test_Pic.Fields("DIVIDENDE_UNIT")) = True Then
NewText = ""
Else
NewText = Re_Test_Pic.Fields("DIVIDENDE_UNIT")
End If
' ***********************PRIX_CASH*****************************
Case "PRIX_CASH"
If IsNull(Re_Test_Pic.Fields("PRIX_CASH")) = True Then
NewText = ""
Else
NewText = Re_Test_Pic.Fields("PRIX_CASH")
End If
' ***********************RVI_RVA_Ratio_Exercice*****************************
Case "RVI_RVA_Ratio_Exercice"
If IsNull(Re_Test_Pic.Fields("RVI_RVA_Ratio_Exercice")) = True Then
NewText = ""
Else
NewText = Re_Test_Pic.Fields("RVI_RVA_Ratio_Exercice")
End If
' ***********************D_DEB_PER_NEGO*****************************
Case "D_DEB_PER_NEGO"
If IsNull(Re_Test_Pic.Fields("D_DEB_PER_NEGO")) = True Then
NewText = ""
Else
NewText = Re_Test_Pic.Fields("D_DEB_PER_NEGO")
End If
' **************************D_LIVRAISON_TIT**************************
Case "D_LIVRAISON_TIT"
If IsNull(Re_Test_Pic.Fields("D_LIVRAISON_TIT")) = True Then
NewText = ""
Else
NewText = Re_Test_Pic.Fields("D_LIVRAISON_TIT")
End If
' ****************************************************
Case Else
NewText = InputBox(Extract_NOM, "A REMPLIR")
End Select
If IsDate(NewText) Then
NewText = Right("00" & Day(NewText), 2) & " " & Left(StrConv(Format(Month(NewText), "MMM"), vbUpperCase), 3) & " " & Year(NewText)
End If
If Not NewText = "" Then
Text_Annonce = Replace(Text_Annonce, "[[" & Extract_NOM & "]]", NewText)
End If
Loop
Set Re_Test_Pic = Nothing
Me.zdtAssemblag = Text_Annonce
End Sub |