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

    [VB6] Creare un file Excel

    Come si usa CreateObject("Excel.Application")?

  2. #2
    Ciao,
    CreateObject crea un ActiveX, della classe specificata.

    Se imposti una reference alla libreria di excel
    (Microsoft Excel 9.0 Object Library),
    il setup della tua applicazione si "porta dietro" questa libreria e da codice puoi semplicemente scrivere:

    Dim xlsAPP As New Excel.Application

    per creare un'istanza dell'applicazione Excel.
    Se invece non imposti un riferimento alla Ms Excel Object Library, puoi creare istanze di Excel utilizzando CreateObject.

    Il primo sistema viene chiamato Early Binding (associazione
    anticipata), mentre il secondo Late Binding, ossia associazione tardiva...
    ...associazione alla libreria cui fai riferimento.

    Con il Late Binding ottieni maggiore leggerezza nel setup
    del tuo applicativo ma, per contro, non hai la certezza che
    il tuo codice funzioni su ogni macchina.
    Con questo metodo, infatti, la libreria non viene registrata durante il setup della tua applicazione, quindi
    creataObject riuscirà ad istanziare Excel solamente nel caso in cui, sulla macchina del cliente sia effettivamente installato Excel... in caso contrario ERRORE !
    Altri inconvenienti del Late Binding sono:
    - usi oggetti generici
    quindi non puoi usufruire dell'Intelli Sense che mostra proprietà e metodi quando scrivi "nomeoggetto.proprietà"

    - non puoi "sentire" gli eventi della classe in quanto non puoi scrivere

    Dim WithEvents Ogg As Object

    Se non puoi impostare un reference alla libreria e intendi usare il Late Binding, devi assegnare il risultato di CreateObject as un'oggetto:

    Dim xlsAPP
    Set xlsAPP = CreateObject("Excel.Application")

    poi rendi visibile l'istanza di Excel:

    xlsAPP.Visible = True

    quando vuoi terminare Excel, chiami il metodo Quit dell'oggetto Application e distruggi l'oggetto:

    xlsApp.Quit
    Set xlsApp = Nothing

    Per fare le prove ti conviene usare il metodo Early Binding.
    Almeno avrai a disposizione nell'Object Browser di VB tutte
    le proprietà e i metodi dell'oggetto.

    Ciao
    Simo

  3. #3
    Ora provo. Grazie mille!

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.