Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Visual Basic 6 - importare un archivio di dati da file
Forum - Visual Basic 6 - importare un archivio di dati da file - Pagina 2

Pagine: [ 1 2 3 ] Precedente | Prossimo
Avatar
umberto (Normal User)
Newbie


Messaggi: 19
Iscritto: 04/06/2007

Segnala al moderatore
Postato alle 16:16
Lunedì, 18/06/2007
Ciao, Scusa se non ti ho risposto finora

allora ho preparato un paio di sub per te

______________________________________


Public Type Type_Ruota
    Estratto(5) As Byte
End Type

Public Type Type_Archivio
    Ruota(11) As Type_Ruota
    DataEstrazione As Date
    InUso As Boolean
End Type

Public Archivio(5000) As Type_Archivio

Public Sub Archivio_Carica(NomeFile As String)
i = 1
Dim TmpNRuota As Integer
Dim Concorso As Integer

    Open NomeFile For Input As #1
        Do While EOF(1) = False
            Line Input #1, d
            
            d = Replace(d, " ", "")
            With Archivio(0)
                .DataEstrazione = Left(d, 8)
                TmpNRuota = GetNumRuota(Mid(d, 9, 2))
                .Ruota(TmpNRuota).Estratto(1) = Mid(d, 11, 2)
                .Ruota(TmpNRuota).Estratto(2) = Mid(d, 13, 2)
                .Ruota(TmpNRuota).Estratto(3) = Mid(d, 15, 2)
                .Ruota(TmpNRuota).Estratto(4) = Mid(d, 17, 2)
                .Ruota(TmpNRuota).Estratto(5) = Mid(d, 19, 2)
                Concorso = Mid(d, 21, 4)
                Archivio(Concorso).Ruota(TmpNRuota) = Archivio(0).Ruota(TmpNRuota)
                Archivio(Concorso).InUso = True
                Archivio(Concorso).DataEstrazione = .DataEstrazione
            End With
        Loop
    Close #1
End Sub

Private Function GetNumRuota(NomeRuota As String) As Integer
NomeRuota = UCase(NomeRuota)

    Select Case NomeRuota
    
    Case Is = "BA"
        GetNumRuota = 1
    Case Is = "CA"
        GetNumRuota = 2
    
    'case is ="PA"
    '   GetNumRuota=?
    '
    '**Continua nello stesso modo
    
    
    Case Else
        'MsgBox NomeRuota & "  Non Riconosciuto"
    End Select

End Function





__________________________________________

La viariabile Archivio è strutturata in questo modo

:

Archivio(NumConcorso).Ruota(NumRuota).Estratto(NumEstratto)

Quindi per caricare in una list box le date di tutte le estrazioni

Esempio

For y = 1 To 5000
    If Archivio(y).InUso = True Then
        List1.AddItem Archivio(y).DataEstrazione
    End If
Next y

Buon divertimento spero che sia chiaro

Ps. Prima di Utilizzare la variabile strutturata (Archvio) devi fargli fare il caricamento dal file tramite la sub:

Archivio_Carica "c:\Lotto.txt"

questo gli permetterà di leggere il file riga per riga, sostituire gli spazi con NIENTE e dato il fatto che ogni riga ha una lunghezza costante.....Il resto credo si capisce


Ciao, ciao

Se tutto è ok scrivimi qualcosa, domani mi collegherò nuovamente

PM
Avatar
Aldo (Normal User)
Rookie


Messaggi: 21
Iscritto: 06/11/2006

Segnala al moderatore
Postato alle 18:23
Lunedì, 18/06/2007
ok grazie tanto sete stati gentilissimi tutte  e due  ...
Scusa Uberto ma la varibile in matrice txt1(0) e txt1(1) ecc
dove la devo fare riconoscere?


e poi .. public type ecc le devo mettere in un modulo bas  giusto..?

Public Type Type_Ruota
Estratto(5) As Byte
End Type

Public Type Type_Archivio
Ruota(11) As Type_Ruota
DataEstrazione As Date
InUso As Boolean
End Type

Public Archivio(5000) As Type_Archivio
Public Sub Archivio_Carica(NOMEFILE As String)

End Sub
i = 1


ciaoo



PM
Avatar
Aldo (Normal User)
Rookie


Messaggi: 21
Iscritto: 06/11/2006

Segnala al moderatore
Postato alle 18:36
Lunedì, 18/06/2007
Postato originariamente da Aldo:

ok grazie tanto sete stati gentilissimi tutte  e due  ...
Scusa Uberto ma la varibile in matrice txt1(0) e txt1(1) ecc
dove la devo fare riconoscere?


e poi .. public type ecc le devo mettere in un modulo bas  giusto..?

Public Type Type_Ruota
Estratto(5) As Byte
End Type

Public Type Type_Archivio
Ruota(11) As Type_Ruota
DataEstrazione As Date
InUso As Boolean
End Type

Public Archivio(5000) As Type_Archivio
Public Sub Archivio_Carica(NOMEFILE As String)

End Sub
i = 1


ciaoo


  



mi dice errore  di run-time 53 impossibile trovare il file
il file e in txt  l'ho chiamato lotto  come mai succede questo .. ?? ciaooo  

Ultima modifica effettuata da Aldo il 18/06/2007 alle 18:40
PM
Avatar
Aldo (Normal User)
Rookie


Messaggi: 21
Iscritto: 06/11/2006

Segnala al moderatore
Postato alle 18:38
Lunedì, 18/06/2007

Ultima modifica effettuata da Aldo il 18/06/2007 alle 18:41
PM
Avatar
umberto (Normal User)
Newbie


Messaggi: 19
Iscritto: 04/06/2007

Segnala al moderatore
Postato alle 21:37
Lunedì, 18/06/2007
La devi usare in questo modo

Archivio_Carica "NOME DEL FILE"

ovviamente NOME DEL FILE lo devi sostituire con il nome del tuo file
Quell'errore è solo perchè non trova il file, quindi avrai impostato male il nome del file.
Volendo puoi inserire tutto in un modulo

Ciao, fammi sapere

PM
Avatar
Aldo (Normal User)
Rookie


Messaggi: 21
Iscritto: 06/11/2006

Segnala al moderatore
Postato alle 12:56
Martedì, 19/06/2007
ciao ho fatto cosi qusto l'ho messo in un modulo
Public Type Type_Ruota
Estratto(5) As Byte
End Type

Public Type Type_Archivio
Ruota(11) As Type_Ruota
DataEstrazione As Date
InUso As Boolean
End Type

Public Archivio(5000) As Type_Archivio
Public Sub Archivio_Carica(lotto As String)

End Sub
i = 1


--------------------------------------------------



e questo nel form-load


Dim TmpNRuota As Integer
Dim Concorso As Integer
Dim d As String




Private Sub Form_Load()

Open " c:\Lotto.txt" For Input As #1

Do While EOF(1) = False
Line Input #1, d

d = Replace(d, " ", " ")
With Archivio(0)
.DataEstrazione = Left(d, 8)
TmpNRuota = GetNumRuota(Mid(d, 9, 2))
.Ruota(TmpNRuota).Estratto(1) = Mid(d, 11, 2)
.Ruota(TmpNRuota).Estratto(2) = Mid(d, 13, 2)
.Ruota(TmpNRuota).Estratto(3) = Mid(d, 15, 2)
.Ruota(TmpNRuota).Estratto(4) = Mid(d, 17, 2)
.Ruota(TmpNRuota).Estratto(5) = Mid(d, 19, 2)
Concorso = Mid(d, 21, 4)
Archivio(Concorso).Ruota(TmpNRuota) = Archivio(0).Ruota(TmpNRuota)
Archivio(Concorso).InUso = True
Archivio(Concorso).DataEstrazione = .DataEstrazione
End With
Loop
Close #1
End Sub
Private Function GetNumRuota(NomeRuota As String) As Integer
NomeRuota = UCase(NomeRuota)

Select Case NomeRuota

Case Is = "BA"
GetNumRuota = 1
Case Is = "CA"
GetNumRuota = 2

Case Is = "FI"
  GetNumRuota = 3
  Case Is = "GE"
GetNumRuota = 4
Case Is = "MI"
GetNumRuota = 5

Case Is = "NA"
  GetNumRuota = 6
Case Is = "PA"
GetNumRuota = 7
Case Is = "RO"
GetNumRuota = 8

Case Is = "TO"
  GetNumRuota = 9
  Case Is = "VE"
GetNumRuota = 10

  
  
'
'**Continua nello stesso modo


Case Else
MsgBox NomeRuota & " Non Riconosciuto"
End Select

End Function



End Function

ms continua a darmi l'errore 53 vedi come l'ho chiamato il file  il file è in txt ma non va e si chiama lotto ...booooo


ciaooo




PM
Avatar
umberto (Normal User)
Newbie


Messaggi: 19
Iscritto: 04/06/2007

Segnala al moderatore
Postato alle 20:03
Martedì, 19/06/2007
Ciao, tutto ciò che ti ho postato lo devi inserire in un modulo

mentre nell' evento Load del form inserisci:

Archivio_Carica "c:\lotto.txt"

solo questo

Ora: Il file dove vuoi lo metti, l'importante è :

se metti il file in :     C:\programmi\archivio.txt

allora la chiamata alla funzione CARICA si scriverà in questo modo :

Archivio_Carica "c:\programmi\archivio.txt"

SE NON DOVESSI RIUSCIRE iscriviti al MESSENGER e dammi il tuo indirizzo Email

PM
Avatar
paperinik4 (Normal User)
Newbie


Messaggi: 8
Iscritto: 21/08/2007

Segnala al moderatore
Postato alle 13:06
Giovedì, 27/08/2009
Testo quotato

Postato originariamente da umberto:

Ciao, tutto ciò che ti ho postato lo devi inserire in un modulo

mentre nell' evento Load del form inserisci:

Archivio_Carica "c:\lotto.txt"

solo questo

Ora: Il file dove vuoi lo metti, l'importante è :

se metti il file in :     C:\programmi\archivio.txt

allora la chiamata alla funzione CARICA si scriverà in questo modo :

Archivio_Carica "c:\programmi\archivio.txt"

SE NON DOVESSI RIUSCIRE iscriviti al MESSENGER e dammi il tuo indirizzo Email




Ciao Umberto,e ciao a tutti quanti

Mi servirebbe na mano. Allora il problema è il seguente
Vorrei, fare una agenda telefonica, ma molto blanda, però con delle caratteristiche. Mi spiego: ad esempio ho il nome, cognome, il cellulare e le'mail di una persona distinti in textbox indicizzati. Creo prima il databse in mdb. dopo di che assegno delle label con le etichette sopra. Infine eseguo la procedura per memorizzare i dati. Mi manca la procedura di ricerca dati. La ricerca dati vorrei esegurla negli stessi textbox che ho utilizzato in precdenza per memorizzare i dati (spero di essere stato chiaro nell'esporre il problema), ed inolte, mi servirebbe effettuare anche la ricerca negli altri campi, cioè non solo nel nome, ma anche nel campo cognome e così via. Infine,, la visualizzazione dei dati ricercati, dovrebbe essere visualizzata (scusate il gioco di parole), sempre negli stessi campi sudetti. Ovvimanente se nel database ci sono due pinco pallino, mi dovrebbe segnalare che ci sono due nominativi con lo stesso nome e con due freccette avanti e indieto per poterli visualizzare entrambi (che si fermano a solo a quei due nominativi ricercati). chi mi da una mano a relizzare ciò ????? I miei contatti sono i seguenti: fdefelice@fastwebnet.it e formattatorepazzo@hotmail.it (msn). grazie ancora a tutti

Ultima modifica effettuata da paperinik4 il 27/08/2009 alle 16:48
PM
Pagine: [ 1 2 3 ] Precedente | Prossimo