首页 > 解决方案 > 使用字符串查找一些单元格

问题描述

我想生成一个带有新列的表,该列CNUM将由某个城市的数字 ID(列中的城市VILLE)填充。

有时,不止一个城市可以有相同的名称。这就是为什么,我想为 olumn 中的每个城市设置多个保管箱CNUM

我的桌子在单子上Liste candidats。我有城市名称和城市 ID 之间对应关系的表格在工作表上Dropbox,而我构建未来保管箱列表所需的所有东西的地方在Sheets2.

我坚持使用以下代码,如果我使用它就可以工作city name:(在自动选择表格后)

Dim I As Integer

'Je fais une [Loop] allant de la ligne 1 jusqu'a l'avant derniere ligne de la sélection précédente
For I = 1 To Selection.Rows.Count
    Dim rFoundAddress As Range
    Dim sFirstAddress As String
    Dim x As Long
    Dim VILLA As String
            
    VILLA = ThisWorkbook.Worksheets("Liste candidats").Range("MonTab[VILLE]")(I)
    
    x = 1
    With ThisWorkbook.Worksheets("Dropdown").Columns(2)
        Set rFoundAddress = .Find(VILLA & "*", LookIn:=xlValues, LookAt:=xlWhole)
        If Not rFoundAddress Is Nothing Then
            sFirstAddress = rFoundAddress.Address
            Do
                ThisWorkbook.Worksheets("Sheet2").Cells(x, 1 + (I - 1) * 3) = .Cells(rFoundAddress.Row, 1 - 1)
                ThisWorkbook.Worksheets("Sheet2").Cells(x, 2 + (I - 1) * 3) = .Cells(rFoundAddress.Row, 1)
                x = x + 1
                Set rFoundAddress = .FindNext(rFoundAddress)
            Loop While Not rFoundAddress Is Nothing And _
                rFoundAddress.Address <> sFirstAddress
        End If
    End With
Next

现在,我想使用字符串VILLA并添加一些东西来添加更多结果:(有和没有的结果:重音、L'、Les、-等)

有没有办法做到这一点?

标签: excelvba

解决方案


好的,我找到了这个代码的解决方案:

设置 rFoundAddress = .Find(VILLA & "*", LookIn:=xlValues, LookAt:=xlWhole)

无论城市名称中是否存在“é/è/e/à/l'/-/ê/ç”,是否有机会获得相同的结果?

谢谢


推荐阅读