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 d'execution 9 insoluble


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de midge
    Homme Profil pro
    Conseiller
    Inscrit en
    Juillet 2010
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Conseiller
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2010
    Messages : 72
    Par défaut erreur d'execution 9 insoluble
    bonjour le forum
    Je tourne en rond avec cette errreur ; le debug s'affiche sur la ligne rouge et je trouve pas, le plus curieux c'est que la macro a fonctionné une fois ... aurais-je rajouté quelque chose qu'il ne fallait pas ?
    (mon niveau en VBA est basique, l'enregistreur et le forum m'ont permis de produire ce qui suit).
    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
    Sub Miseenforme()
    
    
    ' Touche de raccourci du clavier: Ctrl+e
    
    Dim LastLig As Long
    Dim i As Long
    Dim appExcel As Excel.Application
    Dim wbExcel As Excel.Workbook
    
    Application.ScreenUpdating = False
    'Workbooks("export.xls").Close SaveChanges:=False
    'Application.Quit
    'Set wbExcel = Nothing
    'Set appExcel = Nothing
    
    With Sheets("suivi").PageSetup                          'forme paysage et répétition en-tête
             .PrintTitleRows = "$1:$1"
             .Orientation = xlLandscape
       
             ActiveWindow.View = xlPageBreakPreview      'apercu des sauts de pages
             ActiveSheet.VPageBreaks(1).DragOff Direction:=xlToRight, RegionIndex:=1         'déplacement vertical à droiteColumns("I:I").ColumnWidth = 9.43
            
    End With
     
            With Cells.Select                                                                                               'sélection de toutes les cellules et tri colonne A ordre croissant
                    Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess, _
                    OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
                    DataOption1:=xlSortNormal
            End With
                                    With Sheets("suivi")                      'boucle avec insertion de saut de page horizontal
                                            LastLig = .Cells(.Rows.Count, "A").End(xlUp).Row
                                            For i = LastLig To 2 Step -1
                                            If Left(Range("A" & i).Value, 2) <> Left(Range("A" & i + 1).Value, 2) Then
                                            ActiveSheet.HPageBreaks.Add Before:=Range("A" & (i + 1))
                                            End If
                                            Next i
                                    End With
                                                  
    
    ActiveSheet.PrintOut                                            'imprimer les pages de la feuille sur imprimante active
    Application.ScreenUpdating = True
    
    'Workbooks("SUIVIM.xls").Close SaveChanges:=False
    'Application.Quit
    'Set wbExcel = Nothing
    'Set appExcel = Nothing
               
    End Sub
    Merci pour vos retours

  2. #2
    Membre expérimenté
    Inscrit en
    Juillet 2007
    Messages
    239
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 239
    Par défaut
    Bonjour,
    sans regarder le code de trop prêt et à partir du fait que tu précises que le code à marché 1 fois , j'en conclu que la page comportait un saut de page et que la première exécution a permis de l'enlever de la zone d'impression.
    Si on ré-itére l'opération et qu'il n'y a plus de saut de page -> activesheet.VPageBreaks(1). plante. Pour éviter ce type de plantage , on peut mettre un IF activesheet.VPageBreaks.count > 0 then ....

  3. #3
    Membre confirmé Avatar de midge
    Homme Profil pro
    Conseiller
    Inscrit en
    Juillet 2010
    Messages
    72
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Conseiller
    Secteur : Service public

    Informations forums :
    Inscription : Juillet 2010
    Messages : 72
    Par défaut
    Merci CodeFacile pour ta réponse
    Je ne suis pas sûr d'avoir bien compris en revanche ; je préciserai donc que le fichier "export" contient les données à modifier en mode portrait et donc les données sont sur plusieurs pages et je copie/colle sans modifs sur la feuille "suivi" du fichier(l'aperçu des sauts de page identifie plusieurs pages) . C'est à ce moment seulement que je voudrai faire la mise en forme : mode paysage et étirer le saut de page à droite pour que cela tienne sur une page A4. La boucle qui suit permet de créer une feuille par plage d'items (toutes les valeurs commençant par 10 sur une page, tous les 20 sur une autre etc.)
    Ces précisions dites, je ne sais pas ce que je dois faire avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    activesheet.VPageBreaks.count > 0 then
    ? merci pour tes éclaircissements

Discussions similaires

  1. erreur d'execution 3704, ...:objet n'est pas ouvert
    Par cari dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 29/11/2005, 15h44
  2. [ERREUR D'EXECUTION] Segmentation Fault
    Par CestPasMoi dans le forum C++
    Réponses: 3
    Dernier message: 26/11/2005, 17h38
  3. Réponses: 3
    Dernier message: 03/11/2005, 18h41
  4. [LDAP][Interface Winldap.h] Erreur d'execution
    Par -=Spoon=- dans le forum Autres SGBD
    Réponses: 2
    Dernier message: 10/03/2005, 17h10
  5. [javamail] erreur d'execution
    Par bibx dans le forum API standards et tierces
    Réponses: 11
    Dernier message: 05/12/2003, 11h04

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