Pagina 4 di 4 primaprima ... 2 3 4
Visualizzazione dei risultati da 31 a 39 su 39
  1. #31
    Utente di HTML.it L'avatar di vonkranz
    Registrato dal
    Sep 2001
    Messaggi
    1,387
    ..ho anche risposto al pvt....
    ...and I miss you...like the deserts miss the rain...

  2. #32
    Utente di HTML.it
    Registrato dal
    Jan 2001
    Messaggi
    38
    ragazzi sto impazzendo: sto cercando di fare una cosa in excel e ho lo stesso vostro problema: mi resta appeso il processo in memoria... mi potete dire ESATTAMENTE quale istruzione termina il processo di excel? perche ho provato con ApplicationExcel.QUIT e niente... ho provato a settare tutte le variabili a nothing e niente...
    aiuto!!!!

  3. #33
    Utente bannato
    Registrato dal
    Jan 2000
    Messaggi
    360
    nn mi ricordo la discussione...a cui avevo partecipato ma se vuoi chiudere e salvare il foglio di excell usa questo codice
    codice:
    FileExcel.Open
    sembra stranmo veramente quell'open pero il foglio lo vedrai aprisi per circa 10 secondi si salva e poi si chiude!!!

    Ciao

  4. #34
    Utente di HTML.it
    Registrato dal
    Jan 2001
    Messaggi
    38
    ma io riesco a chiuderlo non riesco a distruggere il processo in memoria che rimane appeso...

  5. #35
    Utente bannato
    Registrato dal
    Jan 2000
    Messaggi
    360
    ah io ho capito per fare quello io chiudo il prg fatto in vb....cmq anche io ho quel problema!!

  6. #36
    Utente di HTML.it L'avatar di darkblOOd
    Registrato dal
    Jul 2001
    Messaggi
    2,212
    Originariamente inviato da niddu
    ragazzi sto impazzendo: sto cercando di fare una cosa in excel e ho lo stesso vostro problema: mi resta appeso il processo in memoria... mi potete dire ESATTAMENTE quale istruzione termina il processo di excel? perche ho provato con ApplicationExcel.QUIT e niente... ho provato a settare tutte le variabili a nothing e niente...
    aiuto!!!!
    Ciao, scusami ma ho visto solo adesso il tuo post!

    Il problema è uno: ogni volta che fai riferimento ad un oggetto della libreria excel, succede un casino, nel senso che se non stai attento ti succede quanto hai appena scritto. Mi sembra di aver letto da qualche parte che è un problema diciamo di gestione dei contatori nella libreria di excel (la fonte era Ms!). Ogni oggetto che usi deve essere chiuso correttamente (usando il metodo adeguato) e settato a Nothing.

    Il problema più serio lo porta l'oggetto range, che non fa parte di nessuna collection ma che è presente come proprietà sia dell'oggetto WorkShett che dell'oggetto Application.

    Se decidi di fare riferimento ad un range di celle dell'oggetto worksheet per esempio, devi usare la sintassi seguente:
    codice:
    xlWorkSheet.Range(xlWorkSheet.Cell(x2,y2),xlWorkSheet.Cell(x2,y2))
    prchè se usi :
    codice:
    xlWorkSheet.Range(Cell(x2,y2),Cell(x2,y2))
    la libreria si incasina e ti apre, se non mi sbaglio, un oggetto range per prendere i valori di Cell! Ovviamente tu chiudi tutti gli oggetti che hai creato e usato (xlApplication e xlWorkSheet) e ti rimane un processo in memoria senza che tu ne sappia niente!

    Se cerchi sull'MSDN on-Line di Microsoft dovresti trovare qualcosa al riguardo.

    Aprite gli occhi quando usate gli ocx e leggete attentamente la documentazione relativa.


  7. #37
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    2

    Dal Vb di acess non chiudo excel

    Anche io ho lo stesso problema, dal codice vb di acess apro un file excell ma quando lo chiudo mi rimane nel Task Manager Excel aperto pur avendo settato con Nothing sia le excel (Applicatione, Workbook e worksheet). Se chiudo acess allora mi si chiude anche excell.
    Chiu mi può aiutare?

  8. #38
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    43

    Forse è più semplice?

    Ciao a tutti.
    Mi trovo nella Vostra stessa situazione o, meglio, penso di avere lo stesso problema di cui avete discusso.
    Mi spiego meglio.
    Da un banale File di testo (sul quale un vecchio motore matematico redirige le sue uscite, chiamato "Uscite.txt") importo, tramite una Macro che ho registrato e chiamato "Load", i dati numerici in un file .xls.
    Fatta la Macro, sono andato a verderne il codice che ho "copi_incollato" nel codice della mia sub.
    Pensate che avevo letto già questi post prima di fare tare sub, pensando di evitare il problema copiando il codice che il compilatore stesso genera con la macro, ma così non è stato: ho un processo Excel sempre attivo, al termine della sub!!!
    Ecco il mio codice:
    codice:
    Public Sub CreaGrafico()
    
    Dim exApp As Excel.Application
    Dim exWb As Excel.Workbook
    Dim exWs As Excel.Worksheet
    
    'apre excel
    Set exApp = New Excel.Application
    exApp.Visible = True
    Dim exRange As Excel.Range
    
    'apre il file xls
    strPercorso = "C:\Collegamento\Grafico.xls"
    Set exWb = exApp.Workbooks.Open(strPercorso)
    
    'seleziona il foglio 1
    Set exWs = exWb.Worksheets(1)
    Set exRange = exWs.Range("A3")
    
         With ActiveSheet.QueryTables.Add(Connection:= _
            "TEXT;C:\Collegamento\Uscite.txt", Destination:=exRange)
            .Name = "Load"
            .FieldNames = True
            .RowNumbers = False
            .FillAdjacentFormulas = False
            .PreserveFormatting = True
            .RefreshOnFileOpen = False
            .RefreshStyle = xlInsertDeleteCells
            .SavePassword = False
            .SaveData = True
            .AdjustColumnWidth = True
            .RefreshPeriod = 0
            .TextFilePromptOnRefresh = False
            .TextFilePlatform = xlWindows
            .TextFileStartRow = 1
            .TextFileParseType = xlFixedWidth
            .TextFileTextQualifier = xlTextQualifierDoubleQuote
            .TextFileConsecutiveDelimiter = False
            .TextFileTabDelimiter = True
            .TextFileSemicolonDelimiter = False
            .TextFileCommaDelimiter = False
            .TextFileSpaceDelimiter = False
            .TextFileColumnDataTypes = Array(2, 2, 2, 2, 2, 2)
            .TextFileFixedColumnWidths = Array(15, 10, 10, 10, 12)
            .Refresh BackgroundQuery:=False
        End With
    
    'salva e chiude file
    exWb.Save
    exWb.Close
    'esce da excel
    exApp.Application.Quit
    
    
    'cancella le variabili oggetto
    Set exRange = Nothing
    Set exWs = Nothing
    Set exWb = Nothing
    Set exApp = Nothing
    
    End Sub
    Perchè mi rimane il task aperto?!?!?
    Sapreste aiutarmi?
    Vi ringrazio in anticipo

  9. #39
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    43

    Forse ho risolto...

    :quote:

    Ciao a tutti!
    Sembra che il problema fosse l'individuazione della giusta WorkSheet.
    Dal "With", invece di agganciarsi all'ActiveSheet che il compilatore suggeriva tramite la mia Macro, ho forzato sulla WorkSheet appena dichiarata ed aperta.
    Se a qualcuno servisse, ecco come ho risolto:

    NON FUNZIONANTE:
    codice:
    .
    .
    .
    With ActiveSheet.QueryTables.Add(Connection:= _
            "TEXT;C:\Collegamento\Uscite.txt", Destination:=exRange)
    .
    .
    .
    FUNZIONANTE:
    codice:
    .
    .
    .
    Set exWs = exWb.Worksheets(1) 
    .
    .
    .
    With exWs.QueryTables.Add(Connection:= _
            "TEXT;C:\Collegamento\Uscite.txt", Destination:=exRange)
    .
    .
    .


    Grazie comunque per l'Aiuto.

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 © 2026 vBulletin Solutions, Inc. All rights reserved.