Private Sub Workbook_BeforeClose(Cancel As Boolean)
If MsgBox("エクセルを終了してもよろしいですか?", vbYesNo) = vbNo Then
Cancel = True
Exit Sub
End If
Application.DisplayAlerts = False
Application.Quit
End Sub
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
MsgBox "そのボタンでは保存できません。" & vbCrLf & _
"雛形は残しておきましょう" & vbCrLf & _
"" & vbCrLf & _
"ツールバーの「マクロなし出力」から保存できます。"
Cancel = True
End Sub
という二つのマクロをThisworkbookにいれてあるんですが、
この二つを有効(今は2つ目を'でコメント状態にしてあるので保存可)にすると保存できなくて困っています。
二つを有効にした時はどのようにほぞんすればいいですか?
EXCEL-VBAで、WHERE文での、コンボボックスの値の取得方法がよく分かりません。回答集に似たような質問がありましたが、基礎が無い為、前に進めません。都合のよい事を申しますが教えてください。
Sub テスト2( )
Dim objcon As ADODB.Connection
Dim objrs As ADODB.Recordset
Dim i As Integer
Set objcon = New ADODB.Connection
Set objrs = New ADODB.Recordset
objcon.Open _
"Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & ThisWorkbook.Path & "\process.mdb"
With objrs
.ActiveConnection = objcon
.Source = "select * from 002顧客名 where 県名 = Worksheets[sheet1!].ComboBox1.Text;"
'コンボボックスの値の取得ができません
.Open
End With
For i = 1 To objrs.Fields.Count
Cells(1, i).Value = objrs.Fields(i - 1).name
Next
Range("a30").CopyFromRecordset objrs
objrs.Close
objcon.Close
End With
これ以下で、変数宣言するには、何が足りないのか教えてください
objcon.Open _
"Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & ThisWorkbook.Path & "\process.mdb"
Dim name As Variant
name = Worksheets("sheet1").ComboBox1.Text
With objrs
.ActiveConnection = objcon
.Source = "select * from 002顧客名 where 県名 = name;"
.Open
End With
以上、なにとぞご指示をお願いします。