VBAのコードを見ていただけませんか
いつも、ここのサイトの方々には大変お世話になっております。ありがとうございます。
さてexcel2000で、dataというフォームにデータを格納し、メインのシートから、読みに行って編集するデータベースを作成しようとしています。
とあるサイトを参考にして、コードを作成しましたが、いくら頑張ってもどうしてもエラーが出てしまいうまくいきません。
どうか、コードのチェック・修正内容の提案等をいただけないでしょうか?よろしくお願いいたします。
(1)自分で登録した「IDが見つかりません」という表示しかでず、登録が出来ない
(2)dataシートのB列(2列目)が主キー(IDと呼んでいます) です。(メインのシートとデータを照合させる部分)
(3)メインのシートのIDはAL1~AQ1行セルまでを結合したセルに保管しています。
(4)下記コードでCommandButton1ボタンを「登録」と命名し、メインシートで入力したデータをdataシートに変更登録、新規に入力したデータも登録できるようにしたい。
(5)スピンボタンでIDを変化させて、メインフォーム上のデータも変化させたいけど、こちらも同種のエラーが出てしまう。
■以下コードです。
Private Sub CommandButton1_Click()
Dim fRange As Range
Dim fRow As Long
If (Range("AL1").Value = "") Then 'IDが入力されていない場合
MsgBox "IDを入力して下さい", vbExclamation
Exit Sub
End If
Set fRange = Sheets("data").Columns(2).Find(What:=Range("AL1").Value, _
LookIn:=xlValues, LookAt:=xlWhole, SearchOrder:=xlByRows)
If (fRange Is Nothing) Then 'IDが見つからなかった場合
MsgBox "IDが見つかりません", vbExclamation
Exit Sub
End If
fRow = fRange.row 'IDの行位置を求める
Sheets("data").Cells(fRow, 1).Value = Range("AZ1:BE1").Value
Sheets("data").Cells(fRow, 2).Value = Range("AL1").Value
Sheets("data").Cells(fRow, 3).Value = Range("AA1:AO1").Value
Sheets("data").Cells(fRow, 4).Value = Range("D5:E5").Value
Sheets("data").Cells(fRow, 5).Value = Range("G5").Value
Sheets("data").Cells(fRow, 6).Value = Range("I5").Value
Sheets("data").Cells(fRow, 7).Value = Range("D5:F7").Value
Sheets("data").Cells(fRow, 8).Value = Range("G6:I7").Value
Sheets("data").Cells(fRow, 9).Value = Range("E8:E9").Value
Sheets("data").Cells(fRow, 10).Value = Range("G8:G9").Value
Sheets("data").Cells(fRow, 11).Value = Range("B11:I24").Value
Sheets("data").Cells(fRow, 12).Value = Range("B71").Value
Sheets("data").Cells(fRow, 13).Value = Range("C71").Value
Sheets("data").Cells(fRow, 14).Value = Range("B73").Value
Sheets("data").Cells(fRow, 15).Value = Range("C73").Value
Sheets("data").Cells(fRow, 16).Value = Range("B75").Value
Sheets("data").Cells(fRow, 17).Value = Range("C75").Value
’・・・・全部でfRow122まであります
End Sub
お礼
oldpersonさんの解釈で間違いありません。 ありがとうございました。 一度試して確かめてみます。