Ho un form con MSFlexGrid collegato a un database ho creato un datareport riempieno i Datfield se provo a stampare mi stampa tutto il contenuto. ma dato che ho l'opzione di selezione x fare una ricerca mirata con una combobox di selezione una texbox x scrvere quello che cercare e un pulsante che mi parte la ricerca, vorei nella stampa che mi stampasse solo il risultato della ricerca mirata, ma non so come fare ho provato a trovare qualcosa sia nel forum che in giro a riguardo ma nisba, posto il codice completo.
Grazie in anticipocodice:Option Explicit Dim WithEvents Con As ADODB.Connection Dim WithEvents rekod As ADODB.Recordset Dim WithEvents rekod2 As ADODB.Recordset Dim WithEvents rekod3 As ADODB.Recordset Dim WithEvents rekod4 As ADODB.Recordset Dim Totalengomme As Integer Dim I As Integer Dim tugas As ADODB.Command Public Function lapor_msflex(sql As String) MSFlexGrid1.Rows = 1 Set rekod = New ADODB.Recordset rekod.ActiveConnection = Con rekod.CursorLocation = adUseClient rekod.CursorType = adOpenDynamic rekod.LockType = adLockOptimistic rekod.Source = sql rekod.Open If rekod.EOF Then MsgBox "Spiacente, nessun record trovato !!!" End If While Not rekod.EOF() MSFlexGrid1.AddItem rekod!Marpne & vbTab & _ rekod!Misura & vbTab & _ rekod!Disegno & vbTab & _ rekod!ID & vbTab & _ rekod!ngomme & vbTab & _ rekod!Codice rekod.MoveNext Wend Set rekod = Nothing End Function Private Sub cmdCalcola_Click() MSFlexGrid1.Cols = 5 For I = 1 To MSFlexGrid1.Rows - 1 MSFlexGrid1.Row = I Totalengomme = Totalengomme + Val(MSFlexGrid1.Text) Next I lblTotalengomme.Caption = Totalengomme End Sub Private Sub cmdexit_Click() frmMain.Show Unload Me End Sub Private Sub cmdSvuota_Click() Totalengomme = 0 lblTotalengomme.Caption = "" txtMarpne.Text = "" Misura.Caption = "" Disegno.Text = "" ID.Caption = "" ngomme.Text = "" End Sub Private Sub cmdviewall_Click() Dim sql As String Set rekod = New ADODB.Recordset sql = "Select * From tblfuoristrada" Call lapor_msflex(sql) End Sub Private Sub cmdview_Click() Dim sql As String Set rekod = New ADODB.Recordset If cbosearch = "Marpne" Then sql = "Select * From tblfuoristrada where Marpne LIKE '" & search & "'" Call lapor_msflex(sql) ElseIf cbosearch = "Misura" Then sql = "Select * From tblfuoristrada where Misura LIKE '" & search & "'" Call lapor_msflex(sql) ElseIf cbosearch = "Disegno" Then sql = "Select * From tblfuoristrada where Disegno LIKE '" & search & "'" Call lapor_msflex(sql) End If End Sub Private Sub Command2_Click() Dim cn As ADODB.Connection Dim rs As ADODB.Recordset Set cn = New ADODB.Connection cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & App.Path & "\" & "data.mdb;" & "Jet OLEDB:Database Password=;" Set rs = New ADODB.Recordset Set rs = cn.Execute("select * from tblfuoristrada") Set DataReport2.DataSource = rs DataReport2.Show 1 cn.Close End Sub Private Sub Form_Load() Misura.Enabled = False Set Con = New ADODB.Connection Con.CursorLocation = adUseClient Con.Open "Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info =False;Data Source=" _ & App.Path & "\data.mdb" End Sub Private Sub MSFlexGrid1_Click() With MSFlexGrid1 .Col = 0 txtMarpne = .Text .Col = 1 Misura = .Text .Col = 2 Disegno = .Text .Col = 3 ID = .Text .Col = 4 ngomme = .Text End With End Sub

Rispondi quotando