アプリ版:「スタンプのみでお礼する」機能のリリースについて

いつも大変お世話になっております。

連日の投稿です。

配列の初心者で、ここ数日かじるようになりました。
下記コードの????の部分をどうすれば行番号を取得できるのでしょうか?
どなたかご教示お願い致します。根本的な間違いがあればご指摘頂くとありがたいです。


Dim a As Variant
Dim w As Worksheet

Set w = ThisWorkbook.Sheets("Sheet1")

a = w.ListObjects("テーブル1").DataBodyRange

For i = 1 To UBound(a)

If a(i, 1) = Me.TextBox1.Text Then
With UserForm1.ListView1.ListItems.Add
.Text = Format(a(i, 1), "yyyy/mm/dd(aaa)")
.SubItems(1) = a(i, 4)
.SubItems(2) = a(i, 5)
.SubItems(3) = a(i, 6)
.SubItems(4) = Format(a(i, 7), "#,##0")
.SubItems(5) = a(i, 10)
.SubItems(6) = a(i, 15)
.SubItems(7) =????? ← 実際の元シートのセルの行番号を取得したい
End With


End If
Next

質問者からの補足コメント

  • SubItems(6) までは検索したのを拾えてくれるのですが、行番号がどうにもこうにも正確に拾えません。
    根本的な理解ができていないのでしょうか

      補足日時:2022/08/16 20:22
  • 早速の回答ありがとうございます
    datevalueの件、了解致しました。

    見出行数??!!
    納得です。助かりました。

    No.1の回答に寄せられた補足コメントです。 補足日時:2022/08/16 21:09

A 回答 (1件)

こんにちは。



.SubItems(7) = i + 見出行数

で良いのでは?
あと、

If a(i, 1) = Me.TextBox1.Text Then

は、両方シリアル値に変換してから比較した方がいいかもです。

If datevalue(a(i, 1)) = datevalue(Me.TextBox1.Text) Then

とか、cdate などを使って。
この回答への補足あり
    • good
    • 0
この回答へのお礼

ありがとうございました!
とても助かりました!

お礼日時:2022/08/16 21:10

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!