| 
    
     |  | CommandButton1_Click() '入力完了ボタンを押してもエラー なるけどコンパイルエラーと表示してある。
 どなた方にご指導お願いします。
 
 
 Sub 顧客フォームを開く()
 UserForm3.Show
 End Sub
 Private Sub CommandButton1_Click() '入力完了ボタン
 'Changeイベントがおきないように。
 Application.EnableEvents = False
 Dim ws As Worksheet, Rpos As Long
 Set ws = Worksheets("顧客データ")
 'いつかくしたの?
 ws.Visible = True
 ws.Activate
 'A列(番号)の最終行をチェックし、そこに通し番号を入力します。
 Rpos = ws.Range("A65536").End(xlUp).Row + 1
 'B列(氏名)にテキストボックスの会社名を入力します。
 With ws
 If Rpos = 3 Then
 .Cells(Rpos, 1).Value = 1
 Else
 .Cells(Rpos, 1).Value = .Cells(Rpos - 1, 1).Value + 1
 End If
 '
 .Cells(Rpos, 2).Value = TextBox1.Text '会社名
 .Cells(Rpos, 3).Value = TextBox2.Text '本部名コード
 .Cells(Rpos, 4).Value = TextBox3.Text '支部名コード
 .Cells(Rpos, 5).Value = TextBox5.Text '実施日(年度)
 .Cells(Rpos, 6).Value = TextBox5.Text '実施日(月)
 .Cells(Rpos, 7).Value = TextBox5.Text '実施日(日)
 
 End With
 'フォルダ指定
 ChDir "C:\Documents \My Documents\顧客データ\ & textbox5 & 年度"
 
 '本部コード(001〜999)−支部コード(01〜99)-年度(実施日)-月(実施日)-日(実施日).cvsを保存します。
 
 ActiveWorkbook.SaveAs Filename:= _
 "C:\Documents and Settings\さとる\My Documents\顧客データ\2004年度\" _
 & TextBox2 & "-" & TextBox3 & "-" & txetbox5 & "-" & txetbox6 & "-" & txetbox7 & ".csv", _
 FileFormat:=xlCSV, CreateBackup:=False
 
 'TextBox_Clear
 Dim obj As Control
 For Each obj In Me.Controls
 If TypeName(obj) = "TextBox" Then
 obj.Text = ""
 End If
 Next
 '
 Me.OptionButton1.Value = True
 '行の複製
 RowCopy Rpos
 '
 TextBox1.SetFocus
 Application.EnableEvents = True
 End Sub
 
 
 Private Sub UserForm_Activate()
 'ここで一回やっとくだけでよいような。気になるなら、上でもやったほうがいいかも。
 Dim obj As Control
 For Each obj In Me.Controls
 If TypeName(obj) = "TextBox" Then
 obj.IMEMode = 2
 obj.MaxLength = 3
 obj.AutoTab = True
 End If
 Next
 '特殊な分だけここで別途処理
 TextBox1.MaxLength = 0 '会社名
 TextBox2.MaxLength = 3 '本部コード
 TextBox3.MaxLength = 2 '支部コード
 TextBox5.MaxLength = 0
 
 Me.OptionButton1.Value = True
 End Sub
 
 
 Private Sub CommandButton2_Click() 'キャンセル
 Sheets("顧客データ").Visible = True
 Me.Hide
 Worksheets("顧客データ").Activate
 End Sub
 
 |  |