28/01/08 15:17
magicolotto
Postato originariamente da gantonio:
Ma la
For st ...
seguita subito dalla
Next
conteggio i ritardi nella lista
e la If st ... in basso ...
la if fa partire il conteggio nel modo esatto cioè da 0---> a fine lista
altrimenti iniziaerebbe sballato, come dicevamo sopra
a cosa servono???
Scrivendo del codice a caso non fai altro che rendere inutile il resto del programma ...
Ma la
For st ...
seguita subito dalla
Next
conteggio i ritardi nella lista
e la If st ... in basso ...
la if fa partire il conteggio nel modo esatto cioè da 0---> a fine lista
altrimenti iniziaerebbe sballato, come dicevamo sopra
a cosa servono???
Scrivendo del codice a caso non fai altro che rendere inutile il resto del programma ...
aaa
28/01/08 17:50
gantonio
Lascia stare quel codice ... scrivi questo al posto di quello che hai usato fino ad ora ... mi raccomando, elimina tutto il precedente contenuto nel click del button ed usa questo
... il ritardo apparira' alla sinistra ...
Dim rs As ADODB.Recordset Dim RUS As String Dim RU() As String Dim R As Integer Dim N As Integer Dim RN(1 To 10, 1 To 90) Dim C(1 To 10) Dim NN As Integer Dim NS As String * 154 Dim v As Integer Dim p As Integer Dim ss As String * 2 Dim rit As Integer RUS = "--*BA*CA*FI*GE*MI*NA*PA*RO*TO*VE*" RU = Split(RUS, "*") With List1 .Font.Name = "Terminal" .Font.Size = 9 .Clear NS = "RIT " & Space$(150) For R = 1 To 10 Mid$(NS, (R - 1) * 15 + 5) = "----- " & RU(R) & " ----- " Next R .AddItem NS .AddItem "" End With For R = 1 To 10 C(R) = 0 For N = 1 To 90 RN(R, N) = -1 Next N Next R Set rs = New ADODB.Recordset rs.Open "SELECT * FROM Archivio ORDER BY Id DESC", cn, adOpenForwardOnly rit = 1 Do While Not rs.EOF NS = Space$(154) For R = 1 To 10 If C(R) < 90 Then For NN = 1 To 5 v = Val(rs.Fields(RU(R) & CStr(NN)).Value) p = (R - 1) * 15 + (NN - 1) * 3 + 5 If RN(R, v) = -1 Then RN(R, v) = v C(R) = C(R) + 1 ss = Format$(v, "00") Else ss = "--" End If Mid$(NS, 1) = Format$(rit, "000") Mid$(NS, p) = ss Next NN End If Next R If Mid$(NS, 5) <> Space$(150) Then List1.AddItem NS rit = rit + 1 End If rs.MoveNext Loop rs.Close Set rs = Nothing
... il ritardo apparira' alla sinistra ...
aaa
28/01/08 20:25
magicolotto
ok funziona pefettamente come intendevo...
pero' ho cercato di aggiungere l'1° ruota....
ed è ritornato lo stesso problemino di prima..
cioè : che dopo il ritardo maggiore si aggiungono nella listauna infinita di righe vuote
queste sono le modifiche che ho fatto
che che il problema sia nello SPACE
pero' ho cercato di aggiungere l'1° ruota....
ed è ritornato lo stesso problemino di prima..
cioè : che dopo il ritardo maggiore si aggiungono nella listauna infinita di righe vuote
Dim rs As ADODB.Recordset Dim RUS As String Dim RU() As String Dim R As Integer Dim N As Integer Dim RN(1 To 11, 1 To 90) Dim C(1 To 11) Dim NN As Integer Dim NS As String * 168 Dim v As Integer Dim p As Integer Dim ss As String * 2 Dim rit As Integer RUS = "--*BA*CA*FI*GE*MI*NA*PA*RO*To*VE*NZ*" RU = Split(RUS, "*") With List1 .Font.Name = "Terminal" .Font.Size = 9 .Clear NS = "RIT " & Space$(168) For R = 1 To 11 Mid$(NS, (R - 1) * 15 + 5) = "----- " & RU(R) & " ----- " Next R .AddItem NS .AddItem "" End With For R = 1 To 11 C(R) = 0 For N = 1 To 90 RN(R, N) = -1 Next N Next R Set rs = New ADODB.Recordset rs.Open "Select * FROM Archivio ORDER BY Id DESC", cn, adOpenForwardOnly rit = 0 Do While Not rs.EOF NS = Space$(168) For R = 1 To 11 If C(R) < 90 Then For NN = 1 To 5 v = Val(rs.Fields(RU(R) & CStr(NN)).Value) p = (R - 1) * 15 + (NN - 1) * 3 + 5 If RN(R, v) = -1 Then RN(R, v) = v C(R) = C(R) + 1 ss = Format$(v, "00") Else ss = "--" End If Mid$(NS, 1) = Format$(rit, "000") Mid$(NS, p) = ss Next NN End If Next R If Mid$(NS, 5) <> Space$(168) Then List1.AddItem NS rit = rit + 1 End If rs.MoveNext Loop rs.Close Set rs = Nothing
queste sono le modifiche che ho fatto
che che il problema sia nello SPACE
aaa
28/01/08 22:09
gantonio
Questo il codice corretto
Dim rs As ADODB.Recordset Dim RUS As String Dim RU() As String Dim R As Integer Dim N As Integer Dim RN(1 To 11, 1 To 90) Dim C(1 To 11) Dim NN As Integer Dim NS As String * 168 Dim v As Integer Dim p As Integer Dim ss As String * 2 Dim rit As Integer RUS = "--*BA*CA*FI*GE*MI*NA*PA*RO*TO*VE*NZ*" RU = Split(RUS, "*") With List1 .Font.Name = "Terminal" .Font.Size = 9 .Clear NS = "RIT " & Space$(165) For R = 1 To 11 Mid$(NS, (R - 1) * 15 + 5) = "----- " & RU(R) & " ----- " Next R .AddItem NS .AddItem "" End With For R = 1 To 11 C(R) = 0 For N = 1 To 90 RN(R, N) = -1 Next N Next R Set rs = New ADODB.Recordset rs.Open "SELECT * FROM Archivio ORDER BY Id DESC", cn, adOpenForwardOnly rit = 0 Do While Not rs.EOF NS = Space$(168) For R = 1 To 11 If C(R) < 90 Then For NN = 1 To 5 v = Val(rs.Fields(RU(R) & CStr(NN)).Value) p = (R - 1) * 15 + (NN - 1) * 3 + 5 If RN(R, v) = -1 Then RN(R, v) = v C(R) = C(R) + 1 ss = Format$(v, "00") Else ss = "--" End If Mid$(NS, 1) = Format$(rit, "000") Mid$(NS, p) = ss Next NN End If Next R If Len(Trim(NS)) Then List1.AddItem NS rit = rit + 1 End If rs.MoveNext Loop rs.Close Set rs = Nothing
aaa
28/01/08 22:18
magicolotto
si avevo fatto le stesse modifico
ho aggiunto + 14 allo space
qwowww
che bello
adesso studio come mettere tutto in MSHFlexgrid
ho aggiunto + 14 allo space
qwowww
che bello
adesso studio come mettere tutto in MSHFlexgrid
aaa