環境
Windows Xp Pro
VB2008EE
Excel2007,2003
VBプロジェクト内からExcelを操作するプログラムを作成しています。
Excelマクロを記録したコードをVBに載せていくのですが、組み込み関数の一覧表のようなものがなく、探しています。
http://support.microsoft.com/kb/407883/JA/#appliesto
上記にあるような表で、たとえば「Excel.XlSortMethod.xlPinYin」でxlPinYinの上位、XlSortMethodが引けるようなものを探しています。
数字で記述することもできるのですが、プログラムをわかりやすくしたいため、組み込み関数を使いたいと思っています。
よろしくお願いします。
エクセル2000です。
以下のワークシートチェンジイベントがうまくいきません。
Targetに値が入る場合は問題ないのですが、TargetをクリアしてもRange("F5").MergeAreaがクリアされません。
Targetをクリアした後、TargetをダブルクリックしてからEnterキーを押せばRange("F5").MergeAreaがクリアされるのですが、いちいちそうさせるわけにもいきません。
どうしたらよいのでしょうか?
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address <> "$C$5" Then Exit Sub
If Target.Value <> "" Then
Range("F5").Value = Range("D42").Value
Else
Range("F5").MergeArea.ClearContents
End If
End Sub
エクセル2000です。
以下のワークシートチェンジイベントがうまくいきません。
Targetに値が入る場合は問題ないのですが、TargetをクリアしてもRange("F5").MergeAreaがクリアされません。
Targetをクリアした後、TargetをダブルクリックしてからEnterキーを押せばRange("F5").MergeAreaがクリアされるのですが、いちいちそうさせるわけにもいきません。
どうしたらよいのでしょうか?
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address <> "$C$5" Then Exit Sub
If Target.Value <> "" Then
Range("F5").Value = Range("D42").Value
Else
Range("F5").MergeArea.ClearContents
End If
End Sub
エクセル2000です。
以下のワークシートチェンジイベントがうまくいきません。
Targetに値が入る場合は問題ないのですが、TargetをクリアしてもRange("F5").MergeAreaがクリアされません。
Targetをクリアした後、TargetをダブルクリックしてからEnterキーを押せばRange("F5").MergeAreaがクリアされるのですが、いちいちそうさせるわけにもいきません。
どうしたらよいのでしょうか?
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address <> "$C$5" Then Exit Sub
If Target.Value <> "" Then
Range("F5").Value = Range("D42").Value
Else
Range("F5").MergeArea.ClearContents
End If
End Sub
エクセル2000です。
以下のワークシートチェンジイベントがうまくいきません。
Targetに値が入る場合は問題ないのですが、TargetをクリアしてもRange("F5").MergeAreaがクリアされません。
Targetをクリアした後、TargetをダブルクリックしてからEnterキーを押せばRange("F5").MergeAreaがクリアされるのですが、いちいちそうさせるわけにもいきません。
どうしたらよいのでしょうか?
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address <> "$C$5" Then Exit Sub
If Target.Value <> "" Then
Range("F5").Value = Range("D42").Value
Else
Range("F5").MergeArea.ClearContents
End If
End Sub
お世話になります。
下記の様に行を削除しようとしていますが、
行を削除していくと、1行ずつずれていく為、
結果全部削除されません。
どのようにしたらうまく(空白のセルの行のみ)
削除出来ますでしょうか。
ご教示頂きたく宜しくお願い致します。
記
For k = 2 To r
If Sheets("sheet1").Cells(k, 9) = "" Then
Rows(k).Select
Selection.Delete Shift:=xlUp
End If
Next k
ExcelのSheet1にCommandButton1(表示)があります。
--------------------------------------------------
Private Sub 表示_Click()
(DBより表示処理)
End Sub
--------------------------------------------------
UserForm1にCommandButton1(登録)があります。
--------------------------------------------------
Private Sub 登録_Click()
(DBへの登録処理)
UserForm1.Hide
Call WorkSheets("Sheet1").表示_Click() ・・・☆
Exit Sub
End Sub
--------------------------------------------------
表記のようなプログラムにしたところ、☆印のところで、
下記エラーが表示されてしまいます。
【エラー】---------------------------------------------------
実行時エラー'91':
オブジェクト変数またはWithブロック変数が設定されていません。
-------------------------------------------------------------
どのようにしたらCallステートメントで表示_Clickを呼び出すことが
できるのでしょうか。
ユーザーフォームにコンボボックス2個textboxが2個あります
コンボは選択のみです。
コンボとtextbox1は入力必須にして、空欄でコマンドボタンが押された時はメッセージを表示したいです
OKwebを参考に作ったのですが、コンボ1が空欄でもMsgが出ません
願いします
Private Sub CommandButton1_Click()
Dim ctrl As Control, tst1 As String, txt2 As String
Dim ws As Worksheet
Set ws = Sheets("sheet1")
For Each ctrl In Me.Controls
Select Case ctrl.Name
Case "ComboBox1", "ComboBox2", "TextBox1"
If Me.Controls(ctrl.Name).Value = "" Then
txt1 = txt1 & ctrl.Name & vbLf
Else
txt2 = txt2 & Me.Controls(ctrl.Name).Value & vbLf
End If
End Select
Next
If Len(txt1) > 0 Then
MsgBox "以下の値を入力してください" & vbLf & txt1, vbExclamation
Exit Sub
Else
ret = MsgBox("以下の値を入力します" & vbLf & txt2, vbOKCancel)
If ret <> vbOK Then Exit Sub