Zone d'impression sous Excel

Pour toutes vos questions à propos d'Excel ...

Zone d'impression sous Excel

Messagepar Avenger22 » 16 Mars 2011, 10:10

Bonjour, j'ai un utilisateur qui doit imprimer un document Excel, celui-ci étant assez long il a délimité trois zones d'impressions mais lorsque il lance l'impression seule la première zone d'impression sort de l'imprimante.
Ce problème a été constaté depuis notre migration de Office 2007 vers Office 2010, est-ce simplement un paramétrage dans les options d'impressions ?

Merci.
Avenger22
Nouveau venu
 
Messages: 6
Inscription: 10 Mars 2011, 16:45
Version Excel: 2010 FR

Re: Zone d'impression sous Excel

Messagepar Nad » 16 Mars 2011, 16:44

Bonjour

Tu dois avoir un nom défini pour ta zone d'impression.
Si c'est le cas, supprime-le et tu pourras imprimer les 3 feuilles.

Amicalement
Nad
Avatar de l’utilisateur
Nad
Modérateur
 
Messages: 3168
Inscription: 16 Mars 2008, 21:05
Localisation: BAYONNE
Version Excel: 2003 FR - 2007 FR

Re: Zone d'impression sous Excel

Messagepar Avenger22 » 16 Mars 2011, 16:44

Oki je regarde ça

-- 16 Mar 2011, 15:53 --

Excuse moi mais tu vas dans quels menus pour voir ça ?
Je suis loin de bien maîtriser la suite Office :D
Merci, en attendant je cherche :wink:

J'aimerais aussi savoir si le fonctionnement est censé être le même sous Office 2007 et Office 2010 normalement ?
Avenger22
Nouveau venu
 
Messages: 6
Inscription: 10 Mars 2011, 16:45
Version Excel: 2010 FR

Re: Zone d'impression sous Excel

Messagepar Nad » 16 Mars 2011, 17:04

Re

Accueil ==> Formules ==> Gestionnaire de Noms

Pour la comparaison des versions, je ne peux te répondre : je n'ai pas 2010.

Nad
Avatar de l’utilisateur
Nad
Modérateur
 
Messages: 3168
Inscription: 16 Mars 2008, 21:05
Localisation: BAYONNE
Version Excel: 2003 FR - 2007 FR

Re: Zone d'impression sous Excel

Messagepar Avenger22 » 16 Mars 2011, 17:29

Je commence à comprendre un peu plus le fonctionnement.
Donc pour résumé je n'ai plus aucune zone d'impression sur le document, lorsque je lance l'impression cela devrait m'imprimer toutes les pages n'est-ce pas ?
Hors ça ne m'imprime que la première page, j'ai testé avec d'autres documents je n'ai pas ce problème. :?

Merci
Avenger22
Nouveau venu
 
Messages: 6
Inscription: 10 Mars 2011, 16:45
Version Excel: 2010 FR

Re: Zone d'impression sous Excel

Messagepar Nad » 16 Mars 2011, 17:37

Re

Tu n'as pas de macros ?

Nad
Avatar de l’utilisateur
Nad
Modérateur
 
Messages: 3168
Inscription: 16 Mars 2008, 21:05
Localisation: BAYONNE
Version Excel: 2003 FR - 2007 FR

Re: Zone d'impression sous Excel

Messagepar Avenger22 » 16 Mars 2011, 17:40

Non aucune macro.
Ce problème se produit sur le poste de l'utilisateur ainsi que sur le mien.
Avenger22
Nouveau venu
 
Messages: 6
Inscription: 10 Mars 2011, 16:45
Version Excel: 2010 FR

Re: Zone d'impression sous Excel

Messagepar Nad » 16 Mars 2011, 17:51

Tu peux joindre le fichier ? (tu enlèves les données confidentielles)
Avatar de l’utilisateur
Nad
Modérateur
 
Messages: 3168
Inscription: 16 Mars 2008, 21:05
Localisation: BAYONNE
Version Excel: 2003 FR - 2007 FR

Re: Zone d'impression sous Excel

Messagepar Avenger22 » 16 Mars 2011, 18:03

Voilà je t'ai envoyé ça par mp.
Merci en tout cas pour ton aide :wink:
Avenger22
Nouveau venu
 
Messages: 6
Inscription: 10 Mars 2011, 16:45
Version Excel: 2010 FR

Re: Zone d'impression sous Excel

Messagepar Nad » 16 Mars 2011, 18:25

Re

Moi, à l'aperçu, j'ai 21 pages à imprimer.

Tu as des macros (dans ThisWorkbook)

Ce sont des codes pour récupérer les données de fichiers.
Quand je le lance, j'ai un message : "le fichier galion.ini est introuvable" - Normal puisque je n'ai pas ce fichier.

Je ne vois rien dans les codes concernant la zone d'impression, mais ils sont trop compliqués pour moi . Comme ils ne contiennent rien de confidentiel, je les place ici pour voir si quelqu'un trouve la raison qui fait que tu ais ce problème d'impression.

Code: Tout sélectionner
'''''''''''''''''''''''''''''''''''''''''''
' VISION SYSTEM
' --------------------------------------- '
' @author = SERVICE INFORMATIQUE          '
' --------------------------------------- '
' @Description = Mise à jour des DSN des  '
' fichiers Excel                          '
' Fichier ini de mise à jour : galion.ini '
' Section = DSN                           '
' Clé = chaine                            '
'''''''''''''''''''''''''''''''''''''''''''

Option Explicit

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'''''''''''''''''''''' API Utile pour lire un fichier ini '''''''''''''''''''''''''''''''''''''''''''''''''
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Private Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" _
    (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpDefault As String, _
    ByVal lpReturnedString As String, ByVal nSize As Long, ByVal lpFileName As String) As Long
   
Private Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" _
    (ByVal lpApplicationName As String, ByVal lpKeyName As Any, ByVal lpString As Any, _
    ByVal lpFileName As String) As Long
   
' Procédure d'appel à l'ouverture du fichier excel
Private Sub Workbook_Open()

    Dim path, section_ODBC_AS400, section_ODBC_SQLServer, section_OLEDB, section_MSOLAP, cle_ODBC_AS400, cle_ODBC_SQLServer, cle_OLEDB, cle_MSOLAP As String
   
    ' Path du fichier ini
   path = ThisWorkbook.path & "\+galion.ini"
   
    ' Paramètres ODBC (AS400) fichier ini
   section_ODBC_AS400 = "DSN_AS400"
    cle_ODBC_AS400 = "chaine"
   
    ' Paramètres ODBC (SQL Server) fichier ini
   section_ODBC_SQLServer = "DSN_SQLSERVER"
    cle_ODBC_SQLServer = "chaine"
   
    ' Paramètres OLEDB (SQL Server) fichier ini
   section_OLEDB = "OLEDB"
    cle_OLEDB = "chaine"
   
    ' Paramètres OLEDB-MSOLAP (CUBES) fichier ini
   section_MSOLAP = "MSOLAP"
    cle_MSOLAP = "chaine"
   
    On Error GoTo lblerror
   
    ' Si le fichier n'existe pas -> notification utilisateur
   If (ExistsFichierIni(path) = False) Then
        MsgBox "Le fichier galion.ini est introuvable...", vbExclamation
        Exit Sub
    ' Si le fichier existe -> mise à jour des connexions ODBC AS400 , ODBC SQLServer , OLEDB et MSOLAP
   Else
        Call MiseAjourConnection("ODBC_AS400", section_ODBC_AS400, cle_ODBC_AS400, path)
        Call MiseAjourConnection("ODBC_SQLServer", section_ODBC_SQLServer, cle_ODBC_SQLServer, path)
        Call MiseAjourConnection("OLEDB", section_OLEDB, cle_OLEDB, path)
        Call MiseAjourConnection("MSOLAP", section_MSOLAP, cle_MSOLAP, path)
    End If
   
    Exit Sub
   
lblerror:
    MsgBox "Problème lors de la mise à jour des connexions . Veuillez contacter le service informatique", vbCritical

End Sub

' Fonction LitDansFichierIni
' @Params = section (string) : nom de la section à lire dans le fichier ini
'           cle (string) : nom de la clé à lire dans le fichier ini
'           Fichier (string): Path du fichier ini
'           ValeurParDefaut (string) : valeur optionnelle si aucune valeur de clé n'est trouvée dans le fichier ini
' @return = (string) : valeur de la clé concernée
' @Description = Lecture du fichier ini
Public Function LitDansFichierIni(section As String, cle As String, Fichier As String, _
    Optional ValeurParDefaut As String = "") As String
   
    Dim strReturn As String
    strReturn = String(255, 0)
    GetPrivateProfileString section, cle, ValeurParDefaut, strReturn, Len(strReturn), Fichier
    LitDansFichierIni = Left(strReturn, InStr(strReturn, Chr(0)) - 1)
   
End Function

' Procédure MiseAjourConnection
' @Description = Procédure permettant la mise à jour des
' différentes connexions du fichier excel.
' @Params = connexion (string) : type de connexion (ODBC , OLEDB , MSOLAP)
'           section (string) : nom de la section à lire dans le fichier ini
'           cle (string) : nom de la clé à lire dans le fichier ini
'           Fichier (string) : Path du fichier ini
Private Sub MiseAjourConnection(ByVal connexion, ByVal section As String, ByVal cle As String, ByVal path As String)

    Dim Dsn As String
    Dim Count As Byte
   
    ' Récupération du DSN
   Dsn = LitDansFichierIni(section, cle, path)
   
    ' Connexion ODBC AS400
   If (connexion = "ODBC_AS400") Then
        ' Initialisation de toutes les chaines de connexion de type ODBC AS400 (longueur de la chaîne < 30)
       For Count = 1 To ActiveWorkbook.Connections.Count
            If (ThisWorkbook.Connections(Count).Type = xlConnectionTypeODBC) Then
                If Len(ThisWorkbook.Connections(Count).ODBCConnection.Connection) < 30 Then
                    ThisWorkbook.Connections(Count).ODBCConnection.Connection = "ODBC;DSN=" & Dsn & ";"
                End If
            End If
        Next
    End If
   
    ' Connexion ODBC SQLServer
   If (connexion = "ODBC_SQLServer") Then
        ' Initialisation de toutes les chaines de connexion de type ODBC AS400 (longueur de la chaîne < 30)
       For Count = 1 To ActiveWorkbook.Connections.Count
            If (ThisWorkbook.Connections(Count).Type = xlConnectionTypeODBC) Then
                If Len(ThisWorkbook.Connections(Count).ODBCConnection.Connection) > 30 Then
                    ThisWorkbook.Connections(Count).ODBCConnection.Connection = "ODBC;DSN=" & Dsn & ";"
                End If
            End If
        Next
    End If
   
    ' connexion OLEDB (SQL Server)
   If (connexion = "OLEDB") Then
        ' Initialisation de toutes les chaines de connexion de type OLEDB (SQL Server)
       For Count = 1 To ActiveWorkbook.Connections.Count
            If ThisWorkbook.Connections(Count).Type = xlConnectionTypeOLEDB Then
                If Mid(ThisWorkbook.Connections(Count).OLEDBConnection.Connection, 16, 8) = "SQLOLEDB" Then
                   ThisWorkbook.Connections(Count).OLEDBConnection.Connection = "OLEDB;" & Dsn
                 End If
            End If
        Next
    End If
   
    ' connexion OLEDB - MSOLAP (CUBE)
   If (connexion = "MSOLAP") Then
        For Count = 1 To ActiveWorkbook.Connections.Count
            If ThisWorkbook.Connections(Count).Type = xlConnectionTypeOLEDB Then
                If ThisWorkbook.Connections(Count).OLEDBConnection.OLAP = True Then
                    ThisWorkbook.Connections(Count).OLEDBConnection.Connection = "OLEDB;" & Dsn
                End If
            End If
        Next
    End If
   
End Sub

' Fonction ExistsFichierIni
' @Params = path (string) : path du fichier ini
' @return = (boolean) : true = présence fichier ok | false = présence fichier ko
' @Description = fonction qui vérifie la présence du fichier galion.ini
Private Function ExistsFichierIni(ByVal path As String) As Boolean

    ExistsFichierIni = Dir(path) <> "" And path <> ""
   
End Function


Nad
Avatar de l’utilisateur
Nad
Modérateur
 
Messages: 3168
Inscription: 16 Mars 2008, 21:05
Localisation: BAYONNE
Version Excel: 2003 FR - 2007 FR


Retourner vers Excel - VBA

 


  • Sujets similaires
    Réponses
    Vus
    Dernier message

Utilisateurs en ligne

Utilisateurs parcourant ce forum: Bing [Bot], Exabot [Bot], Google [Bot], Google Adsense [Bot], tulipe_4 et 42 invités