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 - ricerca dinamica di una stringa
Forum - Visual Basic 6 - ricerca dinamica di una stringa - Pagina 2

Pagine: [ 1 2 3 4 ] Precedente | Prossimo
Avatar
azz.ciccio (Normal User)
Pro


Messaggi: 74
Iscritto: 08/04/2009

Segnala al moderatore
Postato alle 22:32
Domenica, 12/04/2009
Testo quotato


In questo codice ti ho scritto come individuare le varie situazioni che si possono venire a creare nella riga del file. Prova ad applicarlo al tuo codice, se non ci riesci riposta dicendo che problemi hai :k:




siiiii..... direi che e' la soluzione ottimale... adesso provo ad adattarla/inserirla nel mio programma e ti faccio sapere.
grazie:k:

PM Quote
Avatar
GrG (Member)
Guru^2


Messaggi: 3430
Iscritto: 21/08/2007

Segnala al moderatore
Postato alle 22:35
Domenica, 12/04/2009
ah lol non avevo capito il tuo problema ora vedendo l'esempio di ruggy penso di aver capito che problema avevi...

PM Quote
Avatar
ruggy94 (Member)
Guru


Messaggi: 890
Iscritto: 21/04/2008

Segnala al moderatore
Postato alle 22:35
Domenica, 12/04/2009
figurati :k:
aspetto notizie :D

PM Quote
Avatar
azz.ciccio (Normal User)
Pro


Messaggi: 74
Iscritto: 08/04/2009

Segnala al moderatore
Postato alle 12:01
Lunedì, 13/04/2009
Testo quotato

Postato originariamente da ruggy94:

figurati :k:
aspetto notizie :D


ok ho fatto le modifiche per adattarlo al mio scopo funziona ma non perfettamente, la seconfda colonna mi scrive anche i valori x e y....:grr::grr:
Codice sorgente - presumibilmente VB.NET

  1. Private Sub Command1_Click()
  2.   Dim Riga As String 'Riga sarebbe una stringa che indica ogni riga del file
  3.  
  4.  
  5.   CommonDialog1.CancelError = True
  6.   On Error GoTo ErrHandler
  7.   CommonDialog1.Filter = "DRD Files(*.drd)|*.drd|"
  8.   CommonDialog1.ShowOpen
  9.   Text1.Text = CommonDialog1.FileName
  10.  
  11.   Open CommonDialog1.FileName For Input As #1
  12.   While Not EOF(1)
  13.   Input #1, Riga
  14.  
  15.  
  16.   If Left(Riga, 1) = "M" Then
  17.   ElseIf Len(Riga) = 3 Then
  18.   T0.AddItem Riga$  ' scrive solo i valori T01 T02 T03 ecc...
  19.   End If
  20.  
  21.  
  22.   If Left(Riga, 4) = "C" Then
  23.   ElseIf Len(Riga) = 10 Then
  24.   Drill.AddItem Riga$ 'scrive i valori tipo T11C0.1620 e tutto quello che ha 10 caratteri...
  25.   End If
  26.  
  27.   CodeFull.AddItem Riga$ 'scrive tutto il resto per intero
  28.  
  29.   Wend
  30.   Close #1
  31.  
  32.   Exit Sub
  33. ErrHandler:
  34.   Exit Sub
  35.  
  36. End Sub


PM Quote
Avatar
ruggy94 (Member)
Guru


Messaggi: 890
Iscritto: 21/04/2008

Segnala al moderatore
Postato alle 12:50
Lunedì, 13/04/2009
?? spiegati meglio :yup:

PM Quote
Avatar
azz.ciccio (Normal User)
Pro


Messaggi: 74
Iscritto: 08/04/2009

Segnala al moderatore
Postato alle 19:14
Lunedì, 13/04/2009
Testo quotato

Postato originariamente da ruggy94:

?? spiegati meglio :yup:



nel senso che vorrei copiare solo questi valori nella listbox
T07C0.0520
T08C0.0787
T09C0.0866
T10C0.1100
T11C0.1620  //senza i vari T07C,T08C,T09C ecc...

e non questi...
X1950Y9926
X1950Y1092
X1950Y1192
X1950Y1292


Codice sorgente - presumibilmente VB.NET

  1. If Left(Riga, 4) = "C" Then
  2.   ElseIf Len(Riga) = 10 Then
  3.   Drill.AddItem Riga$ 'scrive i valori tipo T11C0.1620 e tutto quello che ha 10 caratteri...
  4.   End If




spero che sia chiaro:D
grazie:k:

Ultima modifica effettuata da azz.ciccio il 13/04/2009 alle 19:14
PM Quote
Avatar
GrG (Member)
Guru^2


Messaggi: 3430
Iscritto: 21/08/2007

Segnala al moderatore
Postato alle 20:01
Lunedì, 13/04/2009
non basta fare?
Codice sorgente - presumibilmente VB.NET

  1. If Left(Riga, 4) = "C" Then
  2.   ElseIf Len(Riga) = 10 Then
  3.   if left(riga, 4) <> "X" then
  4.   Drill.AddItem Riga$ 'scrive i valori tipo T11C0.1620 e tutto quello che ha 10 caratteri...
  5.   end if  
  6.   End If


PM Quote
Avatar
azz.ciccio (Normal User)
Pro


Messaggi: 74
Iscritto: 08/04/2009

Segnala al moderatore
Postato alle 20:29
Lunedì, 13/04/2009
Testo quotato

Postato originariamente da GrG:

non basta fare?
Codice sorgente - presumibilmente VB.NET

  1. If Left(Riga, 4) = "C" Then
  2.   ElseIf Len(Riga) = 10 Then
  3.   if left(riga, 4) <> "X" then
  4.   Drill.AddItem Riga$ 'scrive i valori tipo T11C0.1620 e tutto quello che ha 10 caratteri...
  5.   end if  
  6.   End If



perfetto si grazie. e' bastato cambiare i due valori in 3 e 1 e adesso e' perfetta...

stavo smanettando ancora per finire il programma.

adesso mi trovo con circa 500 stringhe tipo X10950Y19926 X e Y sono in tutte le stringhe, ma la lunghezza numerica dopo X e dopo Y puo' variare...
volevo prendere il valore numerico a destra di X e metterla in una listbox e il valore numerico a destra di Y in un'altra listbox.
ho provato con questo codice letto dall'help di visual basic
pero' il risultato e' molto imbrogliato e tralaltro nelle listbox mi crea delle righe vuote... come se ci fossero dei ritorno a capo :-|

Codice sorgente - presumibilmente VB.NET

  1. If Left(Riga, 1) = "X" Then
  2.      s = Split(Riga, "X")
  3.      f = Split(Riga, "Y")
  4.      
  5.      i = 0
  6.      c = 0
  7.      
  8.      For i = 0 To UBound(s)
  9.       ListX.AddItem s(i)
  10.        For c = 0 To UBound(f)
  11.         ListY.AddItem f(c)
  12.      
  13.      Next
  14.      Next
  15.      
  16.      CodeFull.AddItem Riga$      
  17.       End If



grazie:k:

Ultima modifica effettuata da azz.ciccio il 13/04/2009 alle 20:31
PM Quote
Pagine: [ 1 2 3 4 ] Precedente | Prossimo