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 :

Macro à plusieurs actions


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Février 2016
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Février 2016
    Messages : 1
    Points : 2
    Points
    2
    Par défaut Macro à plusieurs actions
    Bonjour,

    J'ai un soucis sur une macro à plusieurs actions dans Excel

    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
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    Private Sub GENERER_Click()
     
    Dim Tablo, iR%, i%, Tmp$, Sep$, Tablo2, iR2%, i2%, Tmp2$, Sep2$, Tablo3, iR3%, i3%, Tmp3$, Sep3$, Tablo4, iR4%, i4%, Tmp4$, Sep4$, Tablo5, iR5%, i5%, Tmp5$, Sep5$
    With Sheets("Export")                    'On travaille directement sur la feuille export
     
        Sep = ";"
        iR = .Range("D65500").End(xlUp).Row  'Détermine la dernière ligne
       Tablo = .Range("A6:D" & iR)          'Mémorise le tout dans un tableau
       Open "\\195.1.1.70\seriem\TEST\OPALE.csv" For Output As #1
        For i = 1 To iR
          If Tablo(i, 4) <> "" Then          'Recopie uniquement les lignes du tableau <> ""
        Tmp = ""
          For k = 1 To 4
          Tmp = Tmp & CStr(Tablo(i, k)) & Sep
          Next
          End If
        Print #1, Tmp
        Next
        DoEvents
        Close #1
     
        Sep2 = ";"
        iR2 = .Range("AD1").End(xlUp).Row  'Détermine la dernière ligne
       Tablo2 = .Range("P1:AD" & iR2)          'Mémorise le tout dans un tableau
       Open "\\195.1.1.70\seriem\TEST\DEntetes_OPALE___.csv" For Output As #2
        For i2 = 1 To iR2
          If Tablo2(i2, 4) <> "" Then          'Recopie uniquement les lignes du tableau <> ""
        Tmp2 = ""
          For k = 1 To 4
          Tmp2 = Tmp2 & CStr(Tablo2(i2, k)) & Sep2
          Next
          End If
        Print #2, Tmp2
        Next
        DoEvents
        Close #2
     
     
     
     
        Sep3 = ";"
        iR3 = .Range("V65000").End(xlUp).Row  'Détermine la dernière ligne
       Tablo3 = .Range("P6:V" & iR3)          'Mémorise le tout dans un tableau
       Open "\\195.1.1.70\seriem\TEST\DLignes_OPALE___.csv" For Output As #3
        For i3 = 1 To iR3
          If Tablo3(i3, 4) <> "" Then          'Recopie uniquement les lignes du tableau <> ""
        Tmp3 = ""
          For k = 1 To 4
          Tmp3 = Tmp3 & CStr(Tablo3(i3, k)) & Sep3
          Next
          End If
        Print #3, Tmp3
        Next
        DoEvents
        Close #3
     
     
        Sep4 = ";"
        iR4 = .Range("Q2").End(xlUp).Row  'Détermine la dernière ligne
       Tablo4 = .Range("P2:Q" & iR4)          'Mémorise le tout dans un tableau
       Open "\\195.1.1.70\seriem\TEST\DMessages_OPALE___.csv" For Output As #4
        For i4 = 1 To iR4
          If Tablo4(i4, 4) <> "" Then          'Recopie uniquement les lignes du tableau <> ""
        Tmp4 = ""
          For k = 1 To 4
          Tmp4 = Tmp4 & CStr(Tablo4(i4, k)) & Sep4
          Next
          End If
        Print #4, Tmp4
        Next
        DoEvents
        Close #4
     
     
        Sep5 = ";"
        iR5 = .Range("Q3").End(xlUp).Row  'Détermine la dernière ligne
       Tablo5 = .Range("P3:Q" & iR5)          'Mémorise le tout dans un tableau
       Open "\\195.1.1.70\seriem\TEST\DLog_OPALE___.csv" For Output As #5
        For i5 = 1 To iR5
          If Tablo5(i5, 4) <> "" Then          'Recopie uniquement les lignes du tableau <> ""
        Tmp5 = ""
          For k = 1 To 4
          Tmp5 = Tmp5 & CStr(Tablo5(i5, k)) & Sep5
          Next
          End If
        Print #5, Tmp5
        Next
        DoEvents
        Close #5
     
    End With
     
        ' Sauvegarde en Excel
       Application.DisplayAlerts = False
        ActiveWorkbook.SaveAs Filename:="\\195.1.1.70\seriem\TEST\OPALE.xlsm", _
        FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
        Application.DisplayAlerts = True
     
    End Sub
    Lorsque je clique sur le bouton j'ai un message d'erreur : Erreur d’exécution 9, L’indice n'appartient pas à la sélection, il bloque après la création du premier fichier



    Merci

    Morgan

  2. #2
    Invité
    Invité(e)
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    For i4 = 0 To UBound(Tablo4)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Dim Tmp5 As String
       For i4 = 0 To UBound(Tablo4)
          If Tablo4(i4,3) <> "" Then          'Recopie uniquement les lignes du tableau <> ""
                    Tmp4 = ""
            For k = 0 To 3
            Tmp4 = Tmp4 & CStr(Tablo4(i4, k)) & Sep4
          Next
          End If
        If Trim(Tmp4) <> "" Then Tmp5 = Tmp5 & Tmp4 & vbCrLf
        Next
       Open "\\195.1.1.70\seriem\TEST\DMessages_OPALE___.csv" For Output As #4
         Print #4, Tmp5
        DoEvents
        Close #4

Discussions similaires

  1. [Spring MVC] Plusieurs actions sur le même formulaire
    Par aloha dans le forum Spring Web
    Réponses: 3
    Dernier message: 26/08/2006, 15h22
  2. Plusieurs actions possible dans un <form>
    Par lodan dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 18/08/2006, 21h23
  3. action qui déclenche plusieurs actions
    Par imane_bennouna dans le forum Struts 1
    Réponses: 6
    Dernier message: 08/08/2006, 15h48
  4. [STRUTS] Plusieurs actions dans une meme page
    Par DarkWark dans le forum Struts 1
    Réponses: 22
    Dernier message: 10/01/2006, 16h18
  5. [struts]plusieurs actions sur 1 JSP sans DispatchAction
    Par Le Marlou dans le forum Servlets/JSP
    Réponses: 15
    Dernier message: 23/03/2005, 14h10

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