Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


12186 / 13644 ツリー ←次へ | 前へ→

【11844】配列内の検索? 伝書鳩 04/3/17(水) 13:22 質問
【11849】Re:配列内の検索? Jaka 04/3/17(水) 14:37 回答
【11854】Re:配列内の検索? 伝書鳩 04/3/17(水) 15:57 質問
【11856】Re:配列内の検索? Jaka 04/3/17(水) 16:11 回答
【11888】Re:配列内の検索? 伝書鳩 04/3/18(木) 12:28 お礼

【11844】配列内の検索?
質問  伝書鳩  - 04/3/17(水) 13:22 -

引用なし
パスワード
   データシートのA列に5000行程(最下行は不特定)文字列があり、
これを配列に入れこの中からTextBox1に入力された文字列を検索、
一致したデータがあった場合「A列の行番号」を、無かった場合は
「エラー」を取得したい。
(Windows2000/Excel2000)

ココを参考にしたのですが私には判りませんでした。
http://www.vbalab.net/vbaqa/c-board.cgi?cmd=one;no=7121;id=excel

ご教授頂ける方何卒宜しくお願いいたします。

【11849】Re:配列内の検索?
回答  Jaka  - 04/3/17(水) 14:37 -

引用なし
パスワード
   こんにちは。
全角の数字だけって状態でなければ、これで良いと思いますけど...。

Private Sub CommandButton1_Click()
  Dim texb As Variant, Mat As Variant
  If IsNumeric(TextBox1.Text) Then
    texb = Val(TextBox1.Value)
  Else
    texb = TextBox1.Value
  End If
  Mat = Application.Match(texb, Columns(1), 0)
  If IsError(Mat) Then
    MsgBox "無い。"
  Else
    MsgBox Mat & "行目"
  End If
End Sub

【11854】Re:配列内の検索?
質問  伝書鳩  - 04/3/17(水) 15:57 -

引用なし
パスワード
   ▼Jaka さん:
ご教授有り難う御座います。
どこの部分でA列5000行のデータを配列にしているのでしょうか?
お恥ずかしい話ですが↓と言う事なのです。
>>ココを参考にしたのですが私には(全く)判りませんでした。
>>http://www.vbalab.net/vbaqa/c-board.cgi?cmd=one;no=7121;id=excel

>こんにちは。
>全角の数字だけって状態でなければ、これで良いと思いますけど...。
>
>Private Sub CommandButton1_Click()
>  Dim texb As Variant, Mat As Variant
>  If IsNumeric(TextBox1.Text) Then
>    texb = Val(TextBox1.Value)
>  Else
>    texb = TextBox1.Value
>  End If
>  Mat = Application.Match(texb, Columns(1), 0)
>  If IsError(Mat) Then
>    MsgBox "無い。"
>  Else
>    MsgBox Mat & "行目"
>  End If
>End Sub

【11856】Re:配列内の検索?
回答  Jaka  - 04/3/17(水) 16:11 -

引用なし
パスワード
   ▼伝書鳩 さん:
>どこの部分でA列5000行のデータを配列にしているのでしょうか?

いえ、わざわざ配列に入れる必要性が感じられなかったので使ってません。

【11888】Re:配列内の検索?
お礼  伝書鳩  - 04/3/18(木) 12:28 -

引用なし
パスワード
   有り難う御座いました。

12186 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free