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 :

Erreur 1004 avec variable tableau [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Membre habitué
    Inscrit en
    Avril 2010
    Messages
    313
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 313
    Points : 176
    Points
    176
    Par défaut Erreur 1004 avec variable tableau
    Bonjour,
    Je réalise une macro qui crée une liste de destinataire en fonction du service selectionné (pour envoi mail lotus notes). Les mails sont entrés sans des cellules d'une feuille excel nommée Personne.
    J'ai donc crée ce code où je souhaite mettre les adresse mails dans ma variable tableau Dest(). Au moment de l'exécution j'ai un bug : erreur 1004.

    Avez vous une idée? Ai je fais une erreur?
    Merci d'avance
    Voici le code
    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
     
    Option Explicit
    Public LAOMax, LAOMin As Long
    Public Nom_Fichier, NomRep, Chemin, DossierParent, Demandeur, Service As String
    Dim LCP As Boolean
    Dim Dest() As Variant
    Public Sub Destinataires()
    Dim i, j  As Byte
     
    Service = Sheets("Formulaire").Range("C4").Value
     
    'Procédure permettant de créer la liste de destinataire des mails
    With Worksheets("Personne")
     
    Select Case Service
        Case "R&D"
            i = .Range("j7").End(xlToRight).Column
            j = i - 10
            ReDim Dest(j)
            Dest = .Range(Cells(7, 10), Cells(7, i)).Value
        Case "Logistique"
            i = .Range("j3").End(xlToRight).Column
            j = i - 10
            ReDim Dest(j)
            Dest = .Range(Cells(3, 10), Cells(3, i)).Value
     
        Case "Production"
            i = .Range("j5").End(xlToRight).Column
            j = i - 10
            ReDim Dest(j)
            Dest = .Range(Cells(5, 10), Cells(5, i)).Value
     
        Case "STEP"
            i = .Range("j9").End(xlToRight).Column
            j = i - 10
            ReDim Dest(j)
            Dest = .Range(Cells(9, 10), Cells(9, i)).Value
     
    End Select
     
    End With
     
    End Sub

  2. #2
    Expert éminent sénior Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Points : 31 877
    Points
    31 877
    Par défaut
    3 remarques

    Déclaration de ton tableau Dest
    Affectation de ton tableau
    Oubli du point de cells au sein de Range

    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
    Dim Dest As Variant
    Public Sub Destinataires()
    Dim i As Integer, j As Integer
     
    Service = Sheets("Formulaire").Range("C4").Value
    'Procédure permettant de créer la liste de destinataire des mails
    With Worksheets("Personne")
        Select Case Service
            Case "R&D"
                i = .Range("J7").End(xlToRight).Column
                Dest = .Range(.Cells(7, 10), .Cells(7, i)).Value
            Case "Logistique"
                i = .Range("J3").End(xlToRight).Column
                Dest = .Range(.Cells(3, 10), .Cells(3, i)).Value
            Case "Production"
                i = .Range("J5").End(xlToRight).Column
                Dest = .Range(.Cells(5, 10), .Cells(5, i)).Value
     
            Case "STEP"
                i = .Range("J9").End(xlToRight).Column
                Dest = .Range(.Cells(9, 10), .Cells(9, i)).Value
        End Select
    End With
    End Sub

  3. #3
    Membre habitué
    Inscrit en
    Avril 2010
    Messages
    313
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 313
    Points : 176
    Points
    176
    Par défaut
    Merci mercatog de t'être penché aussi rapidement sur ma question.
    Ca fonctionne nickel

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

Discussions similaires

  1. Erreur aléatoire avec un tableau
    Par defluc dans le forum Langage
    Réponses: 1
    Dernier message: 12/06/2009, 11h07
  2. Réponses: 6
    Dernier message: 21/03/2009, 18h01
  3. j'ai une erreur 1004 avec mon vba ?
    Par isodoro dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 06/03/2009, 10h13
  4. [VBA][EXCEL]Erreur '1004' avec "Application.Run"
    Par Ania dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 16/01/2006, 10h50
  5. [Excel] Erreur 1004 avec un search
    Par Rakham dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 23/12/2005, 13h54

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