Solved

Find duplicated values in 4 columns MSHFlexgrid

Posted on 2014-01-14
4
289 Views
Last Modified: 2014-01-19
Hi All

I would like to indicate in column (1) if i have duplicated values in column (3) - (5) - (9) - (15).

I already sort my grid:

With MSHFlexGrid1
        .Col = 3
        .Sort = flexSortGenericAscending
        .ColSel = 5
        .Sort = flexSortGenericAscending
        .ColSel = 9
        .Sort = flexSortGenericAscending
        .ColSel = 15
        .Sort = flexSortGenericAscending
        .ColSel = 46
        .Sort = flexSortGenericAscending
    End With


Now if i have duplicated values, I want to had "DUPLICATE" in the column (1)

How can i do that?

Thanks again.
0
Comment
Question by:Wilder1626
  • 2
  • 2
4 Comments
 
LVL 45

Expert Comment

by:aikimark
ID: 39781265
1. Do you need to search multiple rows for the possible duplicate values or will you only need to check the values in the specified columns on the same row?

2. What is the data you are storing in these three columns?
0
 
LVL 11

Author Comment

by:Wilder1626
ID: 39781281
Hi aikimark

1. Do you need to search multiple rows for the possible duplicate values or will you only need to check the values in the specified columns on the same row?

Answer:  yes. I may have multiple rows with the same value.

Ex;

row 3
column 3 = TEST1

Column 5 = TEST2

column 9 = TEST3

column 15 = TEST4


row 15
column 3 = TEST1

Column 5 = TEST2

column 9 = TEST3

column 15 = TEST4


These 2 rows would be Duplicate since column 3 - 5 - 9 and 15 of both rows have same values.


2. What is the data you are storing in these three columns?


Answer: column 3 and 15 are all text and column 5 and 9 are numbers
0
 
LVL 45

Accepted Solution

by:
aikimark earned 500 total points
ID: 39782949
1. change your sort code to limit the columns to those you are going to check for duplications
2. Loop through your rows, looking for duplicates, updating column 1
3. sort by col 46

========
Notes:
* determining duplicates should be relatively easy, since the values will be on adjacent rows.
* concatenate the values in the 3,5,9,15 columns and assign to a string variable.
* assign the concatenated value to a separate variable to minimize the number of concatenation operations.
* Include some delimiter character between the columnar values.
Example:
strCurrentRow = g.textmatrix(lngRow, 3) & "^" & g.textmatrix(lngRow, 5) & "^" & _ 
          g.textmatrix(lngRow, 9) & "^" & g.textmatrix(lngRow, 15)
if strPriorRow = strCurrentRow Then
       g.textmatrix(lngRow - 1, 1) = "Dup"
       g.textmatrix(lngRow, 1) = "Dup"
End If
strPriorRow = strCurrentRow 

Open in new window

0
 
LVL 11

Author Closing Comment

by:Wilder1626
ID: 39790702
Perfect thanks, i was able to follow your steps and now, it work.
0

Featured Post

6 Surprising Benefits of Threat Intelligence

All sorts of threat intelligence is available on the web. Intelligence you can learn from, and use to anticipate and prepare for future attacks.

Join & Write a Comment

You can of course define an array to hold data that is of a particular type like an array of Strings to hold customer names or an array of Doubles to hold customer sales, but what do you do if you want to coordinate that data? This article describes…
If you need to start windows update installation remotely or as a scheduled task you will find this very helpful.
Get people started with the process of using Access VBA to control Outlook using automation, Microsoft Access can control other applications. An example is the ability to programmatically talk to Microsoft Outlook. Using automation, an Access applic…
Show developers how to use a criteria form to limit the data that appears on an Access report. It is a common requirement that users can specify the criteria for a report at runtime. The easiest way to accomplish this is using a criteria form that a…

705 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

Need Help in Real-Time?

Connect with top rated Experts

21 Experts available now in Live!

Get 1:1 Help Now