Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    [VB6] Problemi con aperture file Office

    Buonasera a tutti!!!

    Forse nel titolo non sono stato abbastanza chiaro; cerco di rimediare subito: ho un gestionale che ha la possibilità di interagire con file Word ed Excel (carta intestata per il Word e fatture/preventivi per Excel). Ora viene il bello:

    i file Excel li apre senza problemi; il file Word mi si apre sul portatile ma sul pc del cliente no:

    why????

    L'unica cosa che ho notato è che sul portatile ho Office 2003 mentre il cliente ha Office XP (quindi 2002).

    Grazie a tutti coloro che mi aiuteranno!!!


  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Cosa significa "non si apre"? Qual è l'errore che ottieni?

    Se non indichi i "sintomi", difficilmente sarà possibile determinare la causa del problema.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  3. #3
    Utente di HTML.it L'avatar di Boolean
    Registrato dal
    Oct 2005
    Messaggi
    758
    non hai indicato se il documento lo apri tramite OLE Automation...

    se è così, probabilmente, hai referenziato direttamente la libreria di word nel tuo progetto, ed in questo modo lo "leghi" alla versione presente sul tuo PC.

    quello che ti consiglio di fare è utilizzare il Late Binding, ovvero, dichiarare l'applicazione Word come Object e poi anzichè fare:

    Set oWord As New Word.Application

    scrivere:

    Set oWord = CreateObject("Word.Application")

    Boolean

  4. #4
    Innanzittutto buongiorno a tutti!!! Rispondo:

    [Per Alka]
    Purtroppo non ho nessun tipo di errore; faccio clic sul pulsante, mi parte Word e poi si chiude il mio gestionale e mi rimane aperta la finestra di Word ma senza nessun documento aperto dentro, solo la cornice.

    [Per boolean]
    posto direttamente il codice che utilizzo per far aprire il documento Word:

    codice:
    'dichiarazione preliminare
    Dim objWord As Word.Application
    'definisce objWord come nuova applicazione Word
    Set objWord = New Word.Application
    objWord.Visible = True
    Dim objDoc As Word.Document
    'crea un nuovo documento Word
    'Set objDoc = New Word.Document
    'apre un documento Word esistente
    Set objDoc = objWord.Documents.Open("C:\F3\Carta_intestata.doc")
    Questo è il tutto. Quello che non riesco a capire è che fino alla versione precedente funzionava; nell'ultima e quindi quella attuale, ho solo cambiato disposizione ai controlli nelle form; a livello di codice non ho fatto nulla.

    Comunque grazie un miliardo ha chi mi saprà aiutare.

    A presto!!!


  5. #5
    Utente di HTML.it L'avatar di Boolean
    Registrato dal
    Oct 2005
    Messaggi
    758
    beh, te l'ho detto nel post precedente... devi utilizzare il Late BInding per fare in modo che il riferimento alla Libreri di Word sia dinamenicamente creato sulla base della versione trovata sulla macchina su cui gira il programma.

    quindi:
    codice:
    'dichiarazione preliminare
    Dim objWord As Object
    'definisce objWord come nuova applicazione Word
    Set objWord = CreateObject("Word.Application")
    objWord.Visible = True
    Dim objDoc As Object
    'crea un nuovo documento Word
    Set objDoc = objWord.Documents.Open("C:\F3\Carta_intestata.doc")
    l'unico lato "negativo" di questo sistema è che, se lo usi durante la programmazione, non hai a disposizione proprietà e medodi degli oggetti Word istanziati.
    per porre rimedio a questo, generalmente, si usa dichiarare gli oggetti come hai fatto tu, durante la programmazione per poi usare il Late Binding, prima della compilazione.

    Boolean

  6. #6
    Grazie a tutti!!!

    Al più presto provo sulla macchina del cliente perchè sulla mia non da problemi, quindi.....

    Grazie ancora ragazzi, siete sempre i migliori.

    A presto


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.