Zone d'impression sous Excel

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.

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

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

Merci, en attendant je cherche

J'aimerais aussi savoir si le fonctionnement est censé être le même sous Office 2007 et Office 2010 normalement ?

Re

Accueil ==> Formules ==> Gestionnaire de Noms

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

Nad

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

Re

Tu n'as pas de macros ?

Nad

Non aucune macro.

Ce problème se produit sur le poste de l'utilisateur ainsi que sur le mien.

Tu peux joindre le fichier ? (tu enlèves les données confidentielles)

Voilà je t'ai envoyé ça par mp.

Merci en tout cas pour ton aide

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.

'''''''''''''''''''''''''''''''''''''''''''
' 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

Rechercher des sujets similaires à "zone impression"