IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

VBA - ERROR 400 chez un autre mais pas chez moi [XL-2010]


Sujet :

Macros et VBA Excel

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Femme Profil pro
    Assistant aux utilisateurs
    Inscrit en
    Avril 2013
    Messages
    220
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : Assistant aux utilisateurs
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2013
    Messages : 220
    Par défaut VBA - ERROR 400 chez un autre mais pas chez moi
    Bonjour tout le monde,

    Pour aider un copain, je lui ai travaillé son fichier Excel de suivi des clients. Moi j'ai la version 2010, lui la 2007.

    Dans son fichier, j'ai ajouté deux codes qui envoient des mails à deux occasions différentes. J'ai aussi ajouté une macro de tri selon les données de certaines cellules.

    Problème constaté : chez moi, tout va bien. Ouvre, ferme, modifie, ajoute des données, envoie les courriels, hop ! ça gaze.

    Chez lui : le fichier à fonctionné 2 jours. Le 3ème, fichier corrompu. J'ai renvoyé le fichier original, avec un autre nom. Ça marche deux jours, et maintenant ça ne marche plus du tout, il a "ERROR 400" chaque fois qu'il lance la macro pour envoyer un mail. J'ai envoyé un troisième fichier, il bug dès la première utilisation (et ne cherche même plus à fonctionner au moins une journée).

    C'est son Excel ou c'est mon fichier qui a la jaunisse chez lui ?

    Voici le code utilisé pour les mails (ils sont exactement pareils, il n'y a que l'objet et le texte qui changent - Le second s'appelle RenouvellementTest()) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    Sub AnniversaireTest()
    ' Working in Office 2000-2013
        Dim OutApp As Object
        Dim OutMail As Object
        Dim strbody As String
     
        Set OutApp = CreateObject("Outlook.Application")
        Set OutMail = OutApp.CreateItem(0)
     
        strbody = "Bonjour," & _
                  "<br><br>Texte de bon anniversaire !<br>" & _
                  "<br>Blablalbalbalba" & _
                  "<br><br>Avec mes meilleures salutations."
     
     
        On Error Resume Next
     
        With OutMail
            .Display
            .To = Cells(ActiveCell.Row, 26)
            '.CC = ""
            '.BCC = ""
            .Subject = "Une journée spéciale"
            .HTMLBody = "<HTML><BODY>" & strbody & "</BODY></HTML>" & "<br>" & .HTMLBody
            .Display
        End With
     
        On Error GoTo 0
        Set OutMail = Nothing
        Set OutApp = Nothing
    End Sub
    Et voici le code de tri :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    Sub Tri_OrangeTest()
    '
    ' Affiche les lignes de couleur orange dans le haut du tableau
    '
     
    '
        ActiveWorkbook.Worksheets("Feuil1").AutoFilter.Sort.SortFields.Clear
        ActiveWorkbook.Worksheets("Feuil1").AutoFilter.Sort.SortFields.Add(Range( _
            "V7:V750"), xlSortOnCellColor, xlAscending, , xlSortNormal).SortOnValue.Color _
            = RGB(255, 153, 51)
        ActiveWorkbook.Worksheets("Feuil1").AutoFilter.Sort.SortFields.Add Key:=Range _
            ("V7:V750"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
            xlSortNormal
     
        With ActiveWorkbook.Worksheets("Feuil1").AutoFilter.Sort
            .Header = xlYes
            .MatchCase = False
            .Orientation = xlTopToBottom
            .SortMethod = xlPinYin
            .Apply
        End With
    End Sub
     
     
    Sub Tri_BleuTest()
    '
    ' Affiche les lignes bleues dans le haut du tableau
    '
     
    '
        ActiveWorkbook.Worksheets("Feuil1").AutoFilter.Sort.SortFields.Clear
        ActiveWorkbook.Worksheets("Feuil1").AutoFilter.Sort.SortFields.Add(Range( _
            "F7:F750"), xlSortOnCellColor, xlAscending, , xlSortNormal).SortOnValue.Color _
            = RGB(149, 179, 215)
        ActiveWorkbook.Worksheets("Feuil1").AutoFilter.Sort.SortFields.Add Key:=Range _
            ("F7:F750"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
            xlSortNormal
     
        With ActiveWorkbook.Worksheets("Feuil1").AutoFilter.Sort
            .Header = xlYes
            .MatchCase = False
            .Orientation = xlTopToBottom
            .SortMethod = xlPinYin
            .Apply
        End With
    End Sub
    avec dans la Feuil1, l'appel des macros de tris sur changement de valeur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Private Sub Worksheet_Change(ByVal Target As Range)
     If Not Application.Intersect(Target, Range("B1")) Is Nothing Then
     
       Tri_OrangeTest
     End If
     
     If Not Application.Intersect(Target, Range("B2")) Is Nothing Then
     
       Tri_BleuTest
     End If
     
    End Sub
    Je précise que je ne suis pas programmeuse (ça doit se voir du reste ! ) : je bidouille des codes glanés à droite et à gauche et je demande de l'aide sur ce forum quand ça coince. Par contre, j'aime comprendre ce que je fais alors si j'ai bidouillé un monstre, j'aimerais le savoir.

    Je joins un fichier test, si des fois...

    Merci !
    Fichiers attachés Fichiers attachés

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [OL-2007] meetings s'affichent chez les participant mais pas chez l'organisateur
    Par laetitia1971 dans le forum Outlook
    Réponses: 0
    Dernier message: 25/06/2015, 16h25
  2. [XL-2007] Macro fonctionne sur mon poste mais pas chez les autres
    Par Rosees dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 17/10/2013, 17h01
  3. [WD12] client/serveur chez moi, mais pas chez les autres ?
    Par daphi dans le forum HyperFileSQL
    Réponses: 5
    Dernier message: 19/03/2009, 18h43
  4. idFTP : fonctionnement OK chez moi, mais pas chez les autres
    Par Goofyjp dans le forum Composants VCL
    Réponses: 2
    Dernier message: 31/10/2008, 15h35
  5. Code ok sur mon PC mais pas chez les autres ?
    Par catherineFR27 dans le forum Général VBA
    Réponses: 6
    Dernier message: 04/06/2007, 20h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo