MDR , ya presque 12H entre les 2 messages !
En plus le code "complet" je l'avais vu sur l'autre post.
le mode pas à pas ca veut dire que tu lances la macro dans VBE avec f8 et que tu fais F8 sur chaque arrêt. (ca peut faire beacucoup de F8 avec des boucles si l'anomalie n'est pas systématique.
Maintenant il y a des cas où on ne voit pas où c'était pas bon.
il faut par exemple utiliser
pour voir les valeurs dans la fenêtre exécution.
ou alors tu modifies ton 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
| With rsMail ' Remplissage de la table avec le résultats des filtres :
.AddNew
!BCC = Ol_Items.BCC
!Categories = Ol_Items.Categories
!CC = Ol_Items.CC
!ConversationTopic = Ol_Items.ConversationTopic
!CreationTime = Ol_Items.CreationTime
!HTMLBody = Ol_Items.HTMLBody
!LastModificationTime = Ol_Items.LastModificationTime
!ReceivedByName = Ol_Items.ReceivedByName
!ReceivedOnBehalfOfName = Ol_Items.ReceivedOnBehalfOfName
!ReceivedTime = Ol_Items.ReceivedTime
!SenderName = Ol_Items.SenderName
!Sent = Ol_Items.Sent
!SentOn = Ol_Items.SentOn
!SenderAddress = Ol_Items.SenderEmailAddress
!Size = Ol_Items.Size
!Subject = Ol_Items.Subject
!TO = Ol_Items.TO
!UnRead = Ol_Items.UnRead
!RecipientMail = Ol_Items.Recipients.item(1).Address
!Attachments = strAttachment
!TypeMail = strTypeMail 'On ajoute le type du mail actuel (on peut facilement rajouter des types en recherchant dans les champs du mail une valeur donnée)
!NumContact = strNumContact ' On récupère le numéro ou Id du contact actuel
.Update
End With |
par un truc comme cela :
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
| With oCommand
.ActiveConnection = oConnection
.CommandType = adCmdStoredProc
.CommandTimeout = 60
.CommandText = "ps_EDI_parc_GO_chgt_immat_by_immat"
.Parameters.Refresh
.NamedParameters = True
On Error GoTo erreurs
Dim errOu As String
errOu = "immat"
.Parameters("@old_immat") = Intersect(truc.EntireRow, Col_Immat).Value
errOu = "Centre"
.Parameters("@new_centre") = Intersect(truc.EntireRow, Col_Centre)
errOu = "Entree"
.Parameters("@dateEntree") = Intersect(truc.EntireRow, Col_Entree)
' errOu = "NumParcid"
' .Parameters("@col_NumPArcId") = Intersect(truc.EntireRow, Col_NumParcID)
errOu = "newImmat"
.Parameters("@new_immat") = Intersect(truc.EntireRow, Col_NewImmat)
errOu = "Contrat"
.Parameters("@Contrat") = Intersect(truc.EntireRow, Col_Contrat)
errOu = "Cie"
.Parameters("@cie_id") = Intersect(truc.EntireRow, Col_Cie_id)
End With
Set rst = oCommand.Execute(Affected) |
errOu permet de voir où est l'erreur.
ou alors tu tronques tes enregistrements
!BCC = left(Ol_Items.BCC,X)
où X est la longueur du champs !BCC dans access.
Partager