■参考サイト
【WEBプログラミング NOW!: IE7β2(日本語版)とGoogle検索】
http://shimax.cocolog-nifty.com/search/2006/05/ie72google_ce28.html【【JavaScript】外部プログラム実行できますか? IEの選択文字列を、Perlスクリプトに渡したい
http://www.hatena.ne.jp/1131762882 という質問をしたら、JavaScriptででき.. - 人力検索はてな】
http://q.hatena.ne.jp/1131779952
▼質問
月の日数をを知りたいんだけど・・・。どうしたらできるの?
▼回答
次の関数で取得することができるよ。
Public Function DaysInMonth(ByVal day As Date) As Integer
Dim NextMonth As Variant
Dim EndOfMonth As Variant
NextMonth = DateAdd("m", 1, day)
EndOfMonth = NextMonth - DatePart("d", NextMonth)
DaysInMonth = DatePart("d", EndOfMonth)
End Function
■参考
[AC97]指定された月の日数を取得する方法
http://support.microsoft.com/kb/109703/ja
▼質問
改ページ数を知りたいんだけど、どうしたらできるの?
▼回答
次のコードで取得できるよ。①が横方向の改ページ数で、②が縦方向だよ。
①Worksheets(シート名).VPageBreaks.Count
②Worksheets(シート名).HPageBreaks.Count
▼質問
改ページを削除するにはどうすればいいの?
▼回答
下記のコードを記述すればできるよ。
Worksheets(シート名).ResetAllPageBreaks
垂直方向の改ページを無くすには下記のコードを記述すると自動で行うことができる。
Worksheets(シート名).ResetAllPageBreaks
Worksheets(シート名).PageSetup.PrintArea = "A1:P" & Worksheets(シート名).range("A65536").End(xlUp).row
If (Worksheets(シート名).VPageBreaks.Count > 0) Then
ActiveWindow.View = xlPageBreakPreview
ActiveSheet.VPageBreaks(1).DragOff Direction:=xlToRight, RegionIndex:=1
ActiveWindow.View = xlNormalView
End If
ActiveWindow.LargeScroll Down:=-(Worksheets(シート名).HPageBreaks.Count + 1)
■参考
【Shun's Page】印 刷
http://t_shun.at.infoseek.co.jp/My_Page/Excel-VBA/vba_page20.htm
▼質問
テキストボックスで数値だけを入力できるようにしたいんだ。どうすればいい?
▼回答
KeyPressイベントで下記の関数を呼べばできるよ。
Public Sub KeyNumericOnly(ByRef KeyAscii As ReturnInteger)
'数値キーをチェックする.
If (Not Chr(KeyAscii) Like "[0-9]") Then KeyAscii = 0
End Sub
これだけじゃ駄目だった!
日本語入力ができちゃうー!!
IMEを使えないようにするにはどうしたらいいのか調べることに・・・。
テキストボックスのプロパティIMEModeをfmIMEModeDisableにすれば良いみたい。(^^)v
このやり方のほかに次のコードでも良いみたい。
TextBox1.IMEMode = fmIMEModeDisable
00=fmIMEModeNoControl:IME のモードを変更しません (既定値)。
01=fmIMEModeOn:IME をオンにします。
02=fmIMEModeOff:IME をオフにして英語モードにします。
03=fmIMEModeDisable:IME をオフにします。このモードにするとユーザーは、キー操作によっても IME をオンにすることができなくなります。
04=fmIMEModeHiragana:全角ひらがなモードで IME をオンにします。
05=fmIMEModeKatakana:全角カタカナ モードで IME をオンにします。
06=fmIMEModeKatakanaHalf:半角カタカナ モードで IME をオンにします。
07=fmIMEModeAlphaFull:全角英数モードで IME をオンにします。
08=fmIMEModeAlpha:半角英数モードで IME をオンにします。
09=fmIMEModeHangulFull:全角ハングル モードで IME をオンにします。
10=fmIMEModeHangul:半角ハングル モードで IME をオンにします
■参考
テキストボックスで数値のみを受け取る方法
http://www.microsoft.com/japan/msdn/vbasic/migration/tips/NumericEdit/
▼質問
有効な行数を取得するにはどうしたらいいの?
▼回答
A列の終端セル行を取得するには、下記のようにすると取得できる。
Worksheets(シート名).Range("A65536").End(xlUp).Row
この方法では、A列の65536行目から上(xlUp)に終端セルを検索している。
下記のように、上から検索する方法もある。
Worksheets(シート名).Range("A1").End(xlDown).Row
この場合では、途中に空白があるとそこが終端セルと判断してしまうので本当の
終端セルを取得したい場合は、前者の方法を使用した方が良い。
空白が途中に絶対無いとわかっていれば問題はないと思うが・・・。
■参考
Worksheets(シート名).Range("A1").End(direction)
directionは検索の方向を指定する。
xlToLeft:左へ検索
xlToRight:右へ検索
xlUp:上へ検索
xlDown:下へ検索
▼質問
オブジェクト名でメソッドやプロパティにアクセスしたいんだけどできるの?
▼回答
できるよ!オブジェクト名で設定取得が可能だ。
Me.Controls.Item(オブジェクト名).メソッド名又はプロパティ名
▼質問
Date型の変数に時刻を設定するにはどうしたらいいの?
▼回答
Dim NowDate As Date
Dim MakeDate As Date
Dim strDate As String
NowDate = Now
strDate = Format(NowDate, "yyyy") & "/" & _
Format(NowDate, "mm") & "/" & _
Format(NowDate, "dd")
MakeDate = CDate(strDate)
MakeDate = DateTime.DateAdd("h", 24, MakeDate)
MsgBox Format(MakeDate, "yyyy/mm/dd hh:nn:ss")
MakeDate = DateTime.DateAdd("h", 1, MakeDate)
MsgBox Format(MakeDate, "yyyy/mm/dd hh:nn:ss")