Condividi tramite

aprire file xls ma non visualizzarlo

Anonimo
2012-02-09T12:53:41+00:00

salve vorrei aprire un file excel da vba ma senza visualizzarlo all'utente....

in background

Microsoft 365 e Office | Excel | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

Risposta accettata dall'autore della domanda

  1. Anonimo
    2012-02-09T13:46:21+00:00

    salve vorrei aprire un file excel da vba ma senza visualizzarlo all'utente....

    in background

    Negli esempi qui sotto apro un file e scrivo nella cella A1 del Foglio1 del file che apro, senza che l'utente veda il file.

    Public Sub m()

        Dim objExcel As Excel.Application

        Dim objWkb As Excel.Workbook

        Dim objWks As Excel.Worksheet

        Set objExcel = New Excel.Application

        Set objWkb = objExcel.Workbooks("C:\Prova\tuoFile.xls")

        Set objWks = objWkb.Worksheets("Foglio1")

        With objWks

            .Range("A1").Value = "Pippo"

        End With

        objExcel.Quit

        Set objWks = Nothing

        Set objWkb = Nothing

        Set objExcel = Nothing

    End Sub

    NOTE. Aprendo il file in questo modo, non hai la possibilità di chiuderlo se non  da codice. Quindi devi implementare la cosa, ad esempio:

    Private objExcel As Excel.Application

    Private objWkb As Excel.Workbook

    Private objWks As Excel.Worksheet

    Public Sub mApri()

        Set objExcel = New Excel.Application

        Set objWkb = objExcel.Workbooks.Open("C:\Prova\tuoFile.xls")

        Set objWks = objWkb.Worksheets("Foglio1")

    End Sub

    Public Sub mFaQualcosa()

        With objWks

            .Range("A1").Value = "Mauro"

        End With

    End Sub

    Public Sub mChiudi()

        objWkb.Save

        objExcel.Quit

        Set objWks = Nothing

        Set objWkb = Nothing

        Set objExcel = Nothing

    End Sub

    Cambia da Private a Public la visibilità delle tre variabili oggetto se gli oggetti sono utilizzati da parti del tuo progetto esterne al modulo che contiene il codice. Ad esempio se la Routine mFaQualcosa si trova in un modulo di codice esterno al modulo che contiene le dichiarazioni degli oggetti.

    La risposta è stata utile?

    2 persone hanno trovato utile questa risposta.
    0 commenti Nessun commento

2 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2012-02-10T20:16:50+00:00

    soluzione perfetta grazie!

    Bene! Grazie e buona serata.

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2012-02-10T18:09:22+00:00

    soluzione perfetta grazie!

    La risposta è stata utile?

    0 commenti Nessun commento