Excel VBAについてです、 ある文字列から左から2文字目まで一致するセルをかえすにはどうすればよいですか? 例えば A1~A4に 1564 12 1234 1335

補足

検索値を12とするのでななくて、左から2文字目まで一致するものをかえしたいです。

Excel | Visual Basic120閲覧

ベストアンサー

0
画像

その他の回答(2件)

0

A列から収取したデータをC列に返します。 Sub test() Dim i As Long, k As Long, dic As Object, Itm Set dic = CreateObject("Scripting.Dictionary") For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row dic(Left(Cells(i, 1), 2)) = dic(Left(Cells(i, 1), 2)) & "," & Cells(i, 1) Next Itm = dic.items For i = 0 To dic.Count - 1 If UBound(Split(Itm(i), ",")) > 1 Then k = k + 1 Cells(k, 3) = Mid(Itm(i), 2) End If Next End Sub

画像
0

返すとは どういう意味ですか どこか別の列に 並べるという事ですか? 数値ではなく 文字列が 入っているということなら 添付のようにできますが、重複するものは もう一組以上あれば また変わってきます。 たとば A6が 1511で あれば これだけでは無理です。 B2に=IF(COUNTIF(A:A,LEFT(A2,2)&"*")>1,MAX(B$1:B1)+1,"") 以下オートフィル D2に IFERROR(INDEX(A:A,MATCH(ROW(A1),B:B,0)),"") 以下オートフィル

画像