Excel VBA質問箱 IV

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

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


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

【54982】エラ−番号13について マッキ− 08/4/8(火) 20:48 質問[未読]
【54985】Re:エラ−番号13について りん 08/4/9(水) 7:40 発言[未読]

【54982】エラ−番号13について
質問  マッキ−  - 08/4/8(火) 20:48 -

引用なし
パスワード
   こんにちは。私は、マクロの全くの初心者ですが、地元地区の役員を任せられたので、日々の収入支出表入力をダイアログより入力しようと本の例題を参考にしながら、只今、エクセルにチャレンジ中で、途中ですが、下記のプログラムを作成しました。ですが、「kigou = Application.WorksheetFunction.VLookup(Trim(Str(TextBox4)), Trim(Str(Worksheets("分類").Range("分分類"))), 3, False)」のところでエラ−になり、色々調べてもチンプンカンプンでわかりません。
誰か、どのようにしたら良いか教えて下さいませんか?


Private Sub TextBox12_Click()
'------------------------------------
'登録ボタンによる処理
'-----------------------------------


 'シ−トの保護を解除する
  sheets("台帳").Unprotect
  '最下行に1行挿入する
  insertRow = Range("収入支出台帳").Rows.Count
  Range("収入支出台帳").Rows(insertRow).Insert Shift:=xlDown
  'デ−タをセルに入力する
  '年月日
  gousei = "平成" & TextBox1.Text & "年" & TextBox2.Text & "月" & TextBox3.Text & "日"
  Range("収入支出台帳").Cells(insertRow, 1) = gousei
 
  '分類
  Range("収入支出台帳").Cells(insertRow, 7) = TextBox4.Text
kigou = sheets("台帳").Range("収入支出台帳").Cells(insertRow, 2)
 bunnrui = sheets("台帳").Range("収入支出台帳").Cells(insertRow, 7)
 
  '記号分類
   kigou = Application.WorksheetFunction.VLookup(Trim(Str(TextBox4)), Trim(Str(Worksheets("分類").Range("分分類"))), 3, False)
  '収入先、支出先
 
  Select Case Range("収入支出台帳").Cells(insertRow, 4)
  Case kigou >= 12
    Range("収入支出台帳").Cells(insertRow, 4) = TextBox5.Text
  Case 34 <= kigou.Text <= 35
    Range("収入支出台帳").Cells(insertRow, 4) = TextBox5.Text
  Case Else
     Range("収入支出台帳").Cells(insertRow, 4) = ""
  End Select
  Select Case Range("収入支出台帳").Cells(insertRow, 5)
  Case kigou >= 12
    Range("収入支出台帳").Cells(insertRow, 5) = ""
  Case 34 <= kigou.Text <= 35
    Range("収入支出台帳").Cells(insertRow, 5) = ""
  Case Else
     Range("収入支出台帳").Cells(insertRow, 5) = TextBox5.Text
  End Select
  '金額
  Range("収入支出台帳").Cells(insertRow, 3) = TextBox6.Text
  '収入金額、支出金額
  Select Case Range("収入支出台帳").Cells(insertRow, 8)
  Case kigou >= 12
   Range("収入支出台帳").Cells(insertRow, 8) = TextBox6.Text
  Case 34 <= kigou.Text <= 35
   Range("収入支出台帳").Cells(insertRow, 8) = TextBox6.Text
  Case Else
   Range("収入支出台帳").Cells(insertRow, 8) = ""
  End Select
  Select Case Range("収入支出台帳").Cells(insertRow, 9)
  Case kigou >= 12
   Range("収入支出台帳").Cells(insertRow, 9) = ""
  Case 34 <= kigou.Text <= 35
   Range("収入支出台帳").Cells(insertRow, 9) = ""
   Range("収入支出台帳").Cells(insertRow, 9) = TextBox6.Text
  End Select


  '備考
  Range("収入支出台帳").Cells(insertRow, 6) = TextBox7.Text
 'シ−トを保護する
 
  sheets("台帳").Protect
  'ダイアログを閉じる

【54985】Re:エラ−番号13について
発言  りん E-MAIL  - 08/4/9(水) 7:40 -

引用なし
パスワード
   マッキ− さん、おはようございます。

>こんにちは。私は、マクロの全くの初心者ですが、地元地区の役員を任せられたの
>で、日々の収入支出表入力をダイアログより入力しようと本の例題を参考にしなが
>ら、只今、エクセルにチャレンジ中で、途中ですが、下記のプログラムを作成しま
>した。ですが、
>「kigou = Application.WorksheetFunction.VLookup(Trim(Str(TextBox4)), Trim
>(Str(Worksheets("分類").Range("分分類"))), 3, False)」
>のところでエラ−になり、色々調べてもチンプンカンプンでわかりません。

「型が違います」というエラーですね。

”分類”というシート上の"分分類"という名前の範囲でVLOOKUP

Application.WorksheetFunction.VLookup(Trim(TextBox4.Text)), Worksheets("分類").Range("分分類"), 3, False)

範囲「分分類」のキー(一番左の列)が数値の場合は、Val(Trim(TextBox4.Text)))とVal関数で数値に変えて試してみてください。

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