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 :

montée de version excel 2010 macro plantée


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2012
    Messages : 28
    Points : 0
    Points
    0
    Par défaut montée de version excel 2010 macro plantée
    Bonjour besoin d 'aide voila je monte de version excel et je m 'apercois que mon code ne fonctionne plus c est un code pour envoyer des mails via fichier excel
    exist-il un moyen de convertir ma macro 2007 en 2010

    merci à vous...

  2. #2
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 942
    Points
    55 942
    Billets dans le blog
    131
    Par défaut
    Salut.

    Je doute qu'une macro 2007 ne fonctionne pas en 2010...

    Si tu donnais le code et que tu expliquais ce qui passe (message d'erreur, ...), nous pourrions probablement t'aider davantage
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2012
    Messages : 28
    Points : 0
    Points
    0
    Par défaut
    ok donc j ai deux macro qui plante une quand j'envoie les mails

    et l autre c est un fichier que j ai ecrit (merci de ne pas rigoler car je n'ai pas le niveau encore)

    donc lorsque je lance ma premiere macro pour envoyé les mails j ai ce message qui apparait

    ERREUR D EXECUTION 1004
    ERREUR DEFINI PAR L'application ou par l objet

    voici le code

    et le fichier
    en lien merci par avance

    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
    Sub EnvoiMail()
     
        Dim C As Range, Plage As Range, Factures As Range, Plage2 As Range
        Dim OlApp As Object, M As Object, Wbk As Workbook
        Set OlApp = CreateObject("Outlook.application")
        With Sheets("DOMAINE")
            Set Plage = .Range(.[A2], .[A:A].Find("*", , , , xlByRows, xlPrevious))
        End With
        With Sheets("JUSTIF")
            Set Factures = .Range(.[A1], .Cells(.Rows.Count, 1).End(xlUp)).Resize(, 11)
            For Each C In Plage
                .AutoFilterMode = False
                Factures.AutoFilter 5, C.Value
                Factures.AutoFilter 10, "à relancer"
                Set Plage2 = Factures.Offset(1).Resize(Factures.Rows.Count - 1, 1)
                If Application.Subtotal(103, Plage2) > 0 Then
                    Set Plage2 = Factures.SpecialCells(xlCellTypeVisible)
                    Set M = OlApp.CreateItem(olMailItem)
                    Set Wbk = Workbooks.Add(1)
                    Plage2.Copy Wbk.Sheets(1).[A1]
                    On Error Resume Next
                    Kill ThisWorkbook.Path & "\" & "temp.xls"
                    Application.DisplayAlerts = False
                    Wbk.SaveAs ThisWorkbook.Path & "\" & "temp", FileFormat:=xlExcel8
                    Application.DisplayAlerts = True
                    Wbk.Close False
                    On Error GoTo 0
                    With M
                        .Subject = "Objet"
                        .Body = "Message"
                        .Recipients.Add C.Offset(, 2).Value
                        .attachments.Add ThisWorkbook.Path & "\" & "temp.xls"
                        '.Display
                        .Send
                    End With
                    Kill ThisWorkbook.Path & "\" & "temp.xls"
                End If
            Next C
            .AutoFilterMode = False
        End With
    End Sub

  4. #4
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 942
    Points
    55 942
    Billets dans le blog
    131
    Par défaut
    Sur quelle ligne as-tu cette erreur?
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  5. #5
    Nouveau Candidat au Club
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2012
    Messages : 28
    Points : 0
    Points
    0
    Par défaut
    ben justement je ne l a voie pas ca s arrete directement avec ce message

    mais j ai l impression quand je le fais manuellement bloque a ce niveau

    Factures.AutoFilter 5, C.Value
    Factures.AutoFilter 10, "à relancer"

  6. #6
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 942
    Points
    55 942
    Billets dans le blog
    131
    Par défaut
    Dans la macro, tu définis une plage qui va jusqu'en colonne K, alors que ta plage s'arrête en J (et ton filtre aussi).

    En modifiant la ligne qui fixe la plage, tu passes

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set Factures = .Range(.[A1], .Cells(.Rows.Count, 1).End(xlUp)).Resize(, 10)
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  7. #7
    Nouveau Candidat au Club
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2012
    Messages : 28
    Points : 0
    Points
    0
    Par défaut
    Super, c'était cela. Mais j'ai un autre souci, car la macro s'arrête avec ce message d'erreur
    Erreur d'exécution 2147352567 (800200009)
    erreur automation

    une exception s est produite

  8. #8
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 942
    Points
    55 942
    Billets dans le blog
    131
    Par défaut
    Lorsque tu as une erreur, en général tu peux basculer en VBA pour voir sur quelle ligne l'erreur se produit (elle apparaît en jaune).

    Donne-nous cette ligne, sinon on ne sait toujours pas mieux t'aider.
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

  9. #9
    Nouveau Candidat au Club
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2012
    Messages : 28
    Points : 0
    Points
    0
    Par défaut
    voici cette ligne ou cela bloque


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Wbk.SaveAs ThisWorkbook.Path & "\" & "temp", FileFormat:=xlExcel8
    Application.DisplayAlerts = True

  10. #10
    Nouveau Candidat au Club
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2012
    Messages : 28
    Points : 0
    Points
    0
    Par défaut
    Ca fonctionne mais j'ai un message d'erreur à la fin. Je pense savoir d'où cela viens car j'ai certains approb qui n'ont pas de mail.

    Merci en tout cas mais j ai un autre cas ou la je pense que je vais planter

  11. #11
    Responsable
    Office & Excel


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 122
    Points : 55 942
    Points
    55 942
    Billets dans le blog
    131
    Par défaut
    Ton fichier TEMP ne serait-il pas déjà ouvert, par hasard?

    En phase de test, tu aurais intérêt à désactiver la ligne On Error Resume Next
    "Plus les hommes seront éclairés, plus ils seront libres" (Voltaire)
    ---------------
    Mes billets de blog sur DVP
    Mes remarques et critiques sont purement techniques. Ne les prenez jamais pour des attaques personnelles...
    Pensez à utiliser les tableaux structurés. Ils vous simplifieront la vie, tant en Excel qu'en VBA ==> mon tuto
    Le VBA ne palliera jamais une mauvaise conception de classeur ou un manque de connaissances des outils natifs d'Excel...
    Ce ne sont pas des bonnes pratiques parce que ce sont les miennes, ce sont les miennes parce que ce sont des bonnes pratiques
    VBA pour Excel? Pensez D'ABORD en EXCEL avant de penser en VBA...
    ---------------

Discussions similaires

  1. [EXCEL 2010] Macro copie couleur cellule vers forme
    Par sbastitou dans le forum Excel
    Réponses: 3
    Dernier message: 14/10/2014, 10h59
  2. [XL-2000] Choisir la version Excel (2000 ou 2010) pour ouvrir certains fichiers
    Par OneCode dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 29/09/2014, 11h57
  3. [XL-2010] Un trio infernal : BI - Excel 2010 - Macro.
    Par Steph-B dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 21/02/2013, 10h03
  4. convertisseur de macro vba excel 2003 vers excel 2010
    Par mauguin dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 29/10/2011, 18h13
  5. [XL-2003] Problème sauvegarde macro version excel
    Par cyberboy00 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 19/04/2011, 11h33

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