Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    40

    [VB6]Da excel a txt

    Salve qualcuno sa dirmi come aprire un file excel e leggere campi e record in esso contenuti?per poi scriverli in un file txt(questo lo sa fare)GRAZIE
    Non si finisce mai di imparare...

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,472
    Hai già provato a fare una ricerca sul forum?
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

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

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    40
    si ci ho già provato ma non ho trovato nulla
    Non si finisce mai di imparare...

  4. #4
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    40
    Nessuno saprebbe aiutarmi ne ho davvero bisogno GRAZIE
    Non si finisce mai di imparare...

  5. #5

    dovresti...........

    allora dovresti usare le librerie di Excel tra le references
    la 10.0 se usi office XP

    poi all'interno del codice ti dichiari :
    Dim appExcel As Excel.Application
    Dim worExcel As Excel.Workbook

    e poi

    Set appExcel = New Excel.Application
    Set worExcel = appExcel.Workbooks.Open("PathMioFile")


    poi per accedere alle varie celle basta .....

    miaVariabile = worExcel.Sheets(1).Cells(1, 1)


    e via dicendo.....
    dimmi se ti va bene oppure hai bisogno di altro????'
    Ciao max
    Ci sono solo 10 tipi di persone al mondo, chi conosce il binario e chi no.

    Disapprovo quello che dici, ma difenderò fino alla morte il tuo diritto a dirlo.

    Tanta bella giovinezza che si fugge tuttavia, chi vuol essere lieto sia, del doman non v'e' certezza.

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    357
    Puoi provare :
    codice:
        Dim RSXls As New ADODB.Recordset 
        Dim cn As ADODB.Connection
        Set cn = New ADODB.Connection
        PercorsoNome = "C:\mioxls.xls"
        With cn
            .Provider = "Microsoft.Jet.OLEDB.4.0"
            .ConnectionString = "Data Source=" & PercorsoNome & ";" & _
        "Extended Properties=Excel 8.0;"
            .Open
       End With
       RSXls.Open "SELECT * FROM [Foglio1$]", cn, adOpenStatic
       Do Until RSXls.EOF
           'qui istruzioni per leggere campi da RSXls(0) a ... RsXls(n)
           '...
           RSXls.MoveNext
       Loop
       RSXls.Close
       cn.Close
    Ciao

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    40
    GRAZIE MILLE MAX, ma ho un problema come devo fare per scorrere tutte le celle avevo pensato di fare un ciclo for o va meglio un doWhile not EOF????? grazie
    Non si finisce mai di imparare...

  8. #8

    puoi fare cosi'

    allora per fermarti di solito io uso un ciclo

    i = 1

    DO WHILE trim(worExcel.Sheets(1).Cells(i, 1)) <> ""
    [code]
    i = i + 1
    LOOP

    ma se gia conosci a priori quante celle sono piene....

    allora puoi utilizzare il FOR.......

    ciaooooooooooooo

    Ci sono solo 10 tipi di persone al mondo, chi conosce il binario e chi no.

    Disapprovo quello che dici, ma difenderò fino alla morte il tuo diritto a dirlo.

    Tanta bella giovinezza che si fugge tuttavia, chi vuol essere lieto sia, del doman non v'e' certezza.

  9. #9
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    40
    Mi sembra una buona idea ma non funziona mi da un errore di runtime 1004 ="Errore definito dall'applicazione o dall'oggetto" come lo risolvo???
    Non si finisce mai di imparare...

  10. #10
    Utente di HTML.it
    Registrato dal
    Oct 2005
    Messaggi
    40
    HO RISOLTO L'ERRORE AVEVO OMESSO UN PASSAGGIO CHIEDO SCUSA, MAX PERO' IO DEVO STAMPARE TUTTO QUELLO CHE C'è NEL WORKSHEET, COSì SCORRO SULLE RIGHE MA DEVO SCORRERE ANCHE SULLE COLONNE ,TENENDO FEDE OVVIAMENTE ALLA "FORMATTAZIONE" CHE C'è NEL FILE EXCEL, CREANDO ALLA FINE UN FILE DI TESTO IDENTICO A QUELLO DI EXCEL SEPARANDO I I RECORD CON UN "|".

    Public Sub LeggiDaExcel()
    Dim AppExcel As Excel.Application
    Dim worExcel As Excel.Workbook
    Dim PathName As String
    Dim i As Long
    Dim j As Long
    Dim z As Integer
    z = FreeFile

    PathName = "C:\Documents and Settings\g.russo\Desktop\CIAFFONI.xls"
    Set AppExcel = New Excel.Application
    Set worExcel = AppExcel.Workbooks.Open(PathName)

    Open "C:\Documents and Settings\g.russo\Desktop\FileProva.txt" For Output Access Write As #z


    i = 1

    Do While Trim(worExcel.Sheets(1).Cells(i, 1)) <> ""

    strPrint = worExcel.Sheets(1).Cells(i, 1) & "|"
    i = i + 1
    Write #z, strPrint
    Loop



    Set AppExcel = Nothing
    Set worExcel = Nothing
    End Sub
    Non si finisce mai di imparare...

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.