Solved

VB6 number of the row dbclick

Posted on 2013-06-16
4
365 Views
Last Modified: 2013-06-16
Hello all

I have this macro below that transfer data into my form 8 when i double click in a specific cell in my MSHFlexgrid.

Now, i would like to add in a TEXT13 the row number from the grid.

Ex:

I f i double click in the 3rd row, it will put 3 in my TEXT13.

How can i do that?

Thanks again for your help



On Error GoTo handler
Form8.Show
Form8.Text0 = Trim(Form3.MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row, 3))
Form8.Text00 = Trim(Form3.MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row, 4))
Form8.Text3 = Trim(Form3.MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row, 9))
Form8.Text4 = Trim(Form3.MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row, 11))
Form8.Text5 = Trim(Form3.MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row, 12))
Form8.Text6 = Trim(Form3.MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row, 13))
Form8.Text7 = Trim(Form3.MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row, 15))
Form8.Text8 = Trim(Form3.MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row, 16))
Form8.Text9 = Trim(Form3.MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row, 17))
Form8.Text10 = Trim(Form3.MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row, 20)) '
Form8.Text11 = Trim(Form3.MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row, 21))
Form8.Text12 = Trim(Form3.MSHFlexGrid1.TextMatrix(MSHFlexGrid1.Row, 23))

Exit Sub
handler:
MsgBox "Try again"

Open in new window

0
Comment
Question by:Wilder1626
  • 2
4 Comments
 
LVL 29

Expert Comment

by:Randy Downs
ID: 39251210
Try this

http://vbcity.com/forums/t/23153.aspx

Private Sub ListView1_MouseUp(Button As Integer, Shift As Integer, x As Single, y As Single)

    Dim lngRow As Long
    Dim lngCol As Long
    Dim loop1 As Long
    Dim sngColRight As Single
    
    'make sure we're in column mode
    If ListView1.View = lvwReport Then
    
        'select the clicked row, using HitTest to return the clicked item
        Set ListView1.SelectedItem = ListView1.HitTest(30, y)
        'ensure that there is a row there
        If Not ListView1.SelectedItem Is Nothing Then
            'get the row number
            lngRow = ListView1.SelectedItem.Index
            
            'loop throught each column
            For loop1 = 1 To ListView1.ColumnHeaders.Count
                'add the column width to the value we're checking
                sngColRight = sngColRight + ListView1.ColumnHeaders(loop1).Width
                
                'if the X location is less the the total current column width
                If x <= sngColRight Then
                    'this is the column
                    lngCol = loop1
                    'exit the loop
                    Exit For
                End If
            Next
            
            
            'disply the information
            Label1.Caption = "Row = " & CStr(lngRow) & " Col = " & CStr(lngCol)
            
            'make sure that a row and column were found
            If lngRow <> 0 And lngCol <> 0 Then
                Label2.Caption = "Value clicked = "
                If lngCol = 1 Then
                    Label2.Caption = Label2.Caption & ListView1.SelectedItem.Text
                Else
                    Label2.Caption = Label2.Caption & ListView1.SelectedItem.SubItems(lngCol - 1)
                End If
            End If
        End If
    End If
End Sub

Open in new window

0
 
LVL 46

Accepted Solution

by:
Martin Liss earned 500 total points
ID: 39251357
Private Sub MSFlexGrid1_DblClick()
If MSFlexGrid1.Row = 2 Then
    Form8.Text12 = MSFlexGrid1.Row + 1
    ' Or just
    'Form8.Text12 = "3"
End If

End Sub

Open in new window

0
 
LVL 11

Author Closing Comment

by:Wilder1626
ID: 39251373
Hi,

this is perfect. Actually i will only use this and it work:
Form8.row_num = Form3.MSHFlexGrid1.Row

Thanks again
0
 
LVL 46

Expert Comment

by:Martin Liss
ID: 39251394
You're welcome and I'm glad I was able to help.

Select the 'About Me' tab in my profile and you'll find links to some articles I've written that may interest you.
Marty - MVP 2009 to 2013
0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

There are many ways to remove duplicate entries in an SQL or Access database. Most make you temporarily insert an ID field, make a temp table and copy data back and forth, and/or are slow. Here is an easy way in VB6 using ADO to remove duplicate row…
I was working on a PowerPoint add-in the other day and a client asked me "can you implement a feature which processes a chart when it's pasted into a slide from another deck?". It got me wondering how to hook into built-in ribbon events in Office.
As developers, we are not limited to the functions provided by the VBA language. In addition, we can call the functions that are part of the Windows operating system. These functions are part of the Windows API (Application Programming Interface). U…
Get people started with the utilization of class modules. Class modules can be a powerful tool in Microsoft Access. They allow you to create self-contained objects that encapsulate functionality. They can easily hide the complexity of a process from…

803 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question