Hi friends i would like to know how to get a result in to the text box when i am going to click on any record in the grid the record set has to be shown in to the textboxes just doing double clicking on it i am having the following code which is fetching the records and showing them but when i am clicking on any record its not showing in the textboxes please help me
Code:Dim cnGlobal As New ADODB.Connection Dim RsAccess As New ADODB.Recordset Dim sConnect As String Private sSQL As String Private Sub Combo2_Click() Dim bItemSelected As Byte bItemSelected = Me.Combo2.ListIndex Select Case bItemSelected Case 0 Me.Label8.Caption = "Enter The TerminalID" Text3.Visible = True DTPicker2.Visible = False Case 1 Me.Label8.Caption = "Enter the date " Text3.Visible = False DTPicker2.Visible = True Case 2 Me.Label8.Caption = "Enter last 4 Digits" Text3.Visible = True DTPicker2.Visible = False Case 3 Me.Label8.Caption = "Enter last 4 Digits" Text3.Visible = True DTPicker2.Visible = False Case 4 Me.Label8.Caption = "Enter the Authcode" Text3.Visible = True DTPicker2.Visible = False End Select End SubCode:Private Sub Command1_Click() End ' closes the window End Sub Private Sub Command2_Click() Export MSHFlexGrid1, "Export of Data" End Sub Private Sub Command4_Click() If Option1.Value = False And Option2.Value = False Then MsgBox "Enter your choice" Else Dim rs As ADODB.Recordset Set rs = New ADODB.Recordset With rs '---> Change your DSN <-----' .ActiveConnection = "Provider=MSDASQL;Driver={MySQL ODBC 5.1 Driver};Server=localhost;Port=3306;Database=worldspace;User=root; Password=password;Option=10;" .LockType = adLockOptimistic .CacheSize = 1 .CursorLocation = adUseClient .CursorType = adOpenStatic If Option1.Value = True Then .Source = "Select * from user where address= '" & Combo1.Text & "' and subdate ='" & Format(DTPicker1.Value, "yyyy-mm-dd") & "' " End If If Option2.Value = True Then .Source = "select * from localcard" If Combo2.Text = "Terminalid" Then .Source = "Select * from localcard " End If If Combo2.Text = "trxndate" Then .Source = "Select * from localcard where trxndate='" & Format(DTPicker2.Value, "yyyy-mm-dd") & "'" End If If Combo2.Text = "FTNumber" Then .Source = "Select * from localcard where FTNumber like '%" & Text3.Text & "' " End If If Combo2.Text = "SessionID" Then .Source = "Select * from localcard where SessionID like '%" & Text3.Text & "'" End If If Combo2.Text = "Authcode" Then .Source = "Select * from localcard " End If End If .Open Call Fill_Grid(rs, Me.MSHFlexGrid1) Set .ActiveConnection = Nothing Set rs = Nothing ' rs.Cancel End With End If End SubCode:Private Sub Command5_Click() Text1(0).Visible = True Dim gridRow As Long gridRow = IIf(MSHFlexGrid1.Row > 1, MSHFlexGrid1.Row - 1, MSHFlexGrid1.Rows - 1) ShowDetails gridRow End Sub Private Sub Command6_Click() Text1(0).Visible = True Dim gridRow As Long gridRow = IIf(MSHFlexGrid1.Row < MSHFlexGrid1.Rows - 1, MSHFlexGrid1.Row + 1, 0) ShowDetails gridRow End SubCode:Private Sub Form_Load() 'Establish Connection sConnect = "Provider=MSDASQL;Driver={MySQL ODBC 5.1 Driver};Server=localhost;Port=3306;Database=worldspace;User=root; Password=password;Option=10;" cnGlobal.Open sConnect Label6.Caption = "Database has been Connected..." Timer1.Interval = 100 Label5.Caption = "" Label2.Caption = "" Me.Label8.Caption = "" With Me.Combo2 .AddItem ("Terminalid") .AddItem ("trxndate") .AddItem ("FTNumber") .AddItem ("SessionID") .AddItem ("Authcode") .ListIndex = 0 End With sSQL = "SELECT DISTINCT address FROM user" 'Filter Fields with a unique Name RsAccess.Open sSQL, cnGlobal While Not RsAccess.EOF Combo1.AddItem RsAccess("address") RsAccess.MoveNext ' View all Field Content Wend end Sub Private Sub Timer1_Timer() Label5.Caption = Time Label2.Caption = Date End SubCode:Function Fill_Grid(rs As ADODB.Recordset, _ ctr As MSHFlexGrid) Dim lCols As Long Dim lRows As Long Dim lCol As Long Dim lRow As Long Dim sColor As String 'Check for BOF If (Not (rs.BOF)) Then 'Num of Columns lCols = rs.Fields.Count With ctr .Cols = lCols .Row = 0 'Fill Columns Headers For lCol = 0 To lCols - 1 .Col = lCol .Text = rs(lCol).Name .ColWidth(lCol) = 1500 Next 'Get data lRow = 1 Do While Not rs.EOF For lCol = 0 To lCols - 1 .Col = lCol .Row = lRow .Text = rs.Fields(lCol).Value Next rs.MoveNext lRow = lRow + 1 .Rows = lRow + 1 Loop End With End If End FunctionCode:'Create a module and write following code : Public Function Export(FG As MSHFlexGrid, Sname As String) Static objexc As Object Static objexcwkb As Excel.Workbook Static objexcwst As Excel.Worksheet Dim P As Long Dim q As Long Dim newCell As String Set objexc = CreateObject("Excel.Application") If Err.Number <> 0 Then Set objexc = New Excel.Application Err.Clear End If On Error Resume Next objexc.Visible = False objexc.DisplayAlerts = False Set objexcwkb = objexc.Workbooks.Add Set objexcwst = objexc.ActiveSheet For P = o To FG.Rows - 1 For q = o To FG.Cols - 1 FG.Row = P FG.Col = q newCell = Chr(q + 65) & P + 1 objexcwst.Range(newCell).Value = FG.Text If Option1.Value = True Then objexcwst.Range("G:I").NumberFormat = "[$-409]d-mmm-yy;@" End If If Option2.Value = True Then objexcwst.Range("A:A").NumberFormat = "[$-409]d-mmm-yy;@" 'sets the date in the format 24-nov-2008 objexcwst.Range("C:D").NumberFormat = "0" objexcwst.Range("G:H").NumberFormat = "0.00" 'sets the cost in the format of indian rupees like 34.50 objexcwst.Columns("C:D").ColumnWidth = 18 'sets the column width as 18 End If Next Next objexc.Visible = True objexc.DisplayAlerts = True Set objexc = Nothing Set objexcwrk = Nothing Set objexcwst = Nothing End FunctionCode:Public Sub ShowDetails(currentRow As Long) Dim iCol As Integer Dim iRow As Integer If Label10.UBound > 0 Then For iCol = 1 To Label10.UBound Unload Label10(iCol) Unload Text1(iCol) Next iCol End If With MSHFlexGrid1 For iCol = 0 To .Cols - 1 If iCol = 0 Then Label10(iCol).Caption = .TextMatrix(0, iCol) Text1(iCol).Text = .TextMatrix(currentRow, iCol) Else Load Label10(iCol) Load Text1(iCol) Label10(iCol).Move Label10(0).Left, _ Text1(iCol - 1).Top + Text1(iCol - 1).Height + 60, _ Label10(0).Width, _ Label10(0).Height Text1(iCol).Move Text1(0).Left, _ Text1(iCol - 1).Top + Text1(iCol - 1).Height + 60, _ Text1(0).Width, _ Text1(0).Height Label10(iCol).Caption = .TextMatrix(0, iCol) Text1(iCol).Text = .TextMatrix(currentRow, iCol) Label10(iCol).Visible = True Text1(iCol).Visible = True End If Next iCol .Row = currentRow End With End Sub




Success = 1 % Knowledge + 99 % Hard work
Reply With Quote