Partager via

erreur 440 vba

Anonyme
2024-11-29T14:45:57+00:00

Bonjour,

j'ai un document de suivi de communication dans lequel je veux créer des rappels dans le calendrier outlook. Ça fonctionne, par contre si je veux ajouter un élément auquel je ne veux pas de date de relance, il y a une erreur.

Est-ce que quelqu'un pourrais m'aider dans ma routine.

Merci

Sub AjoutRV()

Dim DLig As Long, Lig As Long

Dim OutObj As Object, OutAppt As Object

Dim DateRdv As Date, FlgRdv As Boolean

Dim sFilter As String

Dim oAppointment As Outlook.AppointmentItem

Dim namespaceOutlook As Outlook.Namespace

Dim DossierCalendrier As Outlook.MAPIFolder

' Créer une instance d'Outlook

Set OutObj = CreateObject("outlook.application")

Set namespaceOutlook = OutObj.GetNamespace("MAPI")

Set DossierCalendrier = namespaceOutlook.GetDefaultFolder(olFolderCalendar)

' Avec la feuille

With Sheets("Suivi")

DLig = .Range("B" & Rows.Count).End(xlUp).Row 

' Pour chaque ligne 

For Lig = 14 To DLig

  ' Si une date de relance existe 

 If .Range("B" & Lig) <> "" Then 

    ' Si un RDV n'a pas déjà été créé 

   If .Range("L" & Lig) <> "" Then 

      ' Si le commentaire à changé 

     If .Range("L" & Lig).Comment.Text <> .Range("E" & Lig).Value Then 

        FlgRdv = True 

      Else 

        ' Sinon le commentaire n'a pas changé = pas de RDV 

       FlgRdv = False 

      End If 

    Else 

      ' Sinon, pas de RDV déjà créé 

     FlgRdv = True 

    End If 

  Else 

    ' Sinon, pas de date de relance 

   FlgRdv = False 

  End If 

  ' Si le FLAG est à vrai on créé le RDV 

 If FlgRdv Then 

    DateRdv = Range("I" & Lig) 

    Set OutAppt = OutObj.CreateItem(1) 

    sFilter = "[Subject] = 'Faire suivi à " & Sheets("Suivi").Range("C" & Lig) & " au " & Sheets("Suivi").Range("G" & Lig) & "' " 

    Set oAppointment = DossierCalendrier.Items.Find(sFilter) 

    If Not oAppointment Is Nothing Then 

        With oAppointment 

            .Subject = "Faire suivi à " & Sheets("Suivi").Range("C" & Lig) & " au " & Sheets("Suivi").Range("G" & Lig) 

            .Duration = 60 

            .Start = DateRdv & " 08:00" 

            .ReminderSet = True 

            .Body = Range("H" & Lig) 

            .Save 

        End With 

    Else 

        With OutAppt 

          .Subject = "Faire suivi à " & Sheets("Suivi").Range("C" & Lig) & " au " & Sheets("Suivi").Range("G" & Lig) 

          .Duration = 60 

          .Start = DateRdv & " 08:00" 

          .ReminderSet = True 

          .Body = Range("H" & Lig) 

          .Save 

        End With 

    End If 

    ' Créer le commentaire et inscrire Oui 

   On Error Resume Next 

    .Range("L" & Lig).Comment.Delete 

    .Range("L" & Lig).AddComment Text:=.Range("E" & Lig).Value 

    .Range("L" & Lig) = "Oui" 

    On Error GoTo 0 

  End If 

Next Lig 

End With

Set OutAppt = Nothing

End Sub

Microsoft 365 et Office | Installer, entrer des clés, activer | Autres | Autres

Question verrouillée. Cette question a été migrée à partir de la Communauté Support Microsoft. Vous pouvez voter pour indiquer si elle est utile, mais vous ne pouvez pas ajouter de commentaires ou de réponses ni suivre la question.

0 commentaires Aucun commentaire
{count} votes

5 réponses

  1. Hecatonchire 53,380 Points de réputation Modérateur bénévole
    2024-11-29T18:02:42+00:00

    Bonjour,

    Je regardé rapidement mais vu qu'il n'y a pas de date en colonne i alors la variable DateRdv est vide il me semble (Difficile de crée un évènement sans date) !

    0 commentaires Aucun commentaire
  2. Anonyme
    2024-11-29T17:54:42+00:00

    lorsque j'entre un info sans date de relance

    0 commentaires Aucun commentaire
  3. DanielCo 107.7K Points de réputation
    2024-11-29T17:18:57+00:00

    Bonjour,

    Sur quelle ligne se produit l'erreur ?

    Daniel

    0 commentaires Aucun commentaire
  4. Anonyme
    2024-11-29T15:48:43+00:00

    Cette réponse a été automatiquement traduite. Par conséquent, il peut y avoir des erreurs grammaticales ou des formulations étranges.

    Salut Beauregard Francis,

    Merci de visiter la communauté Microsoft.

    Étant donné qu’il y a moins d’implication dans le contenu VBA dans cette communauté, il est recommandé de publier vos questions connexes sur Stack Overflow (en anglais uniquement) https://stackoverflow.com/questions/tagged/vba, où il y a des professionnels plus expérimentés qui peuvent vous offrir des conseils.

    Clause de non-responsabilité : Microsoft n’offre aucune garantie implicite ou autre et n’est pas responsable des informations obtenues à partir de sites Web tiers liés ou de tout support technique lié à la technologie fournie par ces sites.

    Sinceres salutations

    Jonathan Z - MSFT | Spécialiste du support communautaire Microsoft

    0 commentaires Aucun commentaire
  5. Supprimé

    Cette réponse a été supprimée en raison d’une violation de notre Code de conduite. La réponse a été signalée manuellement ou identifiée via la détection automatisée avant que l’action ne soit entreprise. Pour obtenir plus d’informations, veuillez consulter notre Code de conduite.


    Les commentaires ont été désactivés. En savoir plus