- ベストアンサー
今年度は365日のはずなのに、、、
chiezo2005の回答
2月10日から2月1日を引くと9日になりますよね。 それと同じです。 2月10日から1月31日を引けば10日になります。 つまり日の始まり基準で考えているので、 12月31日というのは12月31日の午前零時、つまり12月30日と31日の間の 真夜中の12時になるので、12月31日の一日はカウントされません。
関連するQ&A
- ACCESSのAutoKeysマクロでアクションの実行エラーが必ず出る
ACCESSのAutoKeysマクロでプロシージャを呼び出しているのですが、 そのVBAコードの中に、条件分岐を作っていて その返り値がFalseの時だけ以降の処理を継続させようとしています。 ここでTrueの場合は警告メッセージを出した上で 処理を終えるためVBAでEndと記述しているのですが、 このTrueの際にアクションの実行エラーウィンドウが必ず出て 困っています。(格好悪い) こちらを出ないようにするにはどうしたらいいでしょうか。 もしくはマクロ名で言うAutoKeysのような処理を、マクロを 使わずにVBAだけで記述・実行する方法はありますでしょうか? 長い質問になってしまいましたが、 ご存知のやさしい方ぜひ教えてください。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- オーバーフローが発生します
すみません、どなたか教えて下さい。 下記ソースで、日付の差Date1とDate2の間隔が長くなると「Number:6,Description:オーバーフローしました。」というエラーが出てしまいます。 日付の間隔は30日くらいでもエラーになります。 atime = CLng(DateDiff("n",CDate(Date1),CDate(Date2))) '60で割って100倍後、少数第1位を4捨5入する atime=atime / 60 * 100 atime=Fix(atime + 0.5) なぜエラーになってしまうのか、どなたかアドバイスをお願い致します。
- ベストアンサー
- Microsoft ASP
- VBA dictionary getkeys返り値
エクセルVBAの話です。 dictionaryオブジェクトのgetkeysメソッドを、 keyが1つも登録されていないときに使ったときに、 返り値をウォッチウィンドウで見ると、 型「Variant/Variant(0 to -1)」 その中身の値「<変数なし>」 と表示されています。 この返り値の挙動が、 プログラムを組む上で便利なので、 自作の関数でも、 同じような返り値を返したいのですが、 どのように値を代入するといいのでしょうか?
- ベストアンサー
- Excel(エクセル)
- 検索と置換 vba後、そのまま検索できない
シートに 2014/1/1 が入力されていて VBAで Sub test() If Not Cells.Find(What:=CDate("2014/1/1"), MatchByte:=False) Is Nothing Then Debug.Print "2014/1/1はあります" End If End Sub を実行すると、"2014/1/1はあります"が返りますが このコードを実行し終わってから、ワークシート画面で検索と置換を開くと、 「1/1/2014」の状態で入っています。 そのまま検索ボタンを押しても、さっきはVBAでは"2014/1/1はあります" だったのに、手作業だと「ありません」になります。 どういうことなのでしょう?
- ベストアンサー
- Excel(エクセル)
- EXCEL-VBA の round関数
EXCEL-VBAで Cells(1, 1) = Round(Cells(3, 3), 0) として、 C3 に28.5 を入力し、上のマクロを実行すると、 A1には、28と表示されてしまいます。 ワークシート関数の =round(c3,0) を他の適当なセルに入力すると、 その返り値は、29 とちゃんとなります。 c3が 28.5001 とかだと両者ちゃんと 29 となります。 これは、VBA関数のバグなりスペックなのでしょうか?
- ベストアンサー
- オフィス系ソフト
- 日付を数値型にしたいけどうまくできない
Sub さんぷる1() Dim testlong As Long testlong = CLng(("2012/12/14")) End Sub をすると、 型が一致しません。になりますが、なぜでしょう? VBAです。
- ベストアンサー
- Visual Basic
- Javaアプリケーション実行の返り値を取る方法
コマンドラインからJavaアプリケーションを実行させて、 成功/失敗の返り値を取りたいのですが。 普通に実行するとmain()を動かすわけですから返り値はvoidで不可能ですよね。 コマンドラインからmain()以外のメソッドを呼び出すとかって可能でしょうか? そのほか何か方法はありますか? ちなみに、batファイルで返り値を判断して、処理を行いたいのですが。 ご存知の方教えてください。よろしくお願いします。
- ベストアンサー
- Java
- SQLで返り値が空とでる
SQLで 「返り値(戻り値?)が空」とでる。 Windows7ー64BitでXAMPPの最新バージョンの1.8.1を使ってます。 MyAdminでinsertなどのSQL文を直接実行してできてたのですが、 DreamWeaverでPHPとSQL構築してブラウザで実施してもデータベースに反映されません。 その後再度MyAdminで直接しても反映されなくなりました。 上記のように返り値が空とでてきます。 どのような原因があるか教えいただけますでしょうか。
- 締切済み
- PHP
- or では大丈夫なのにandではダメな理由は?
or では大丈夫なのにandではダメな理由は? セルA1に2007/10/3を入れ、 2007年ならピンク 2008年なら黄緑 とやろうとして、2つのマクロを作りました。 Macro1では正常に動作するのですが Macro2を実行すると2007/10/3なのに、黄緑になってしまいます。 2008/10/3でMacro2を実行すると何も動きません。 Macro1とMacro2の違いは「or」と「and」の違いだけです。 Sub Macro1() If 39081 >= CLng(Range("a1")) Or CLng(Range("a1")) <= 39447 Then Range("a1").Interior.ColorIndex = 38 ElseIf 39448 >= CLng(Range("a1")) Or CLng(Range("a1")) <= 39813 Then Range("a1").Interior.ColorIndex = 4 End If End Sub Sub Macro2() If 39081 >= CLng(Range("a1")) And CLng(Range("a1")) <= 39447 Then Range("a1").Interior.ColorIndex = 38 ElseIf 39448 >= CLng(Range("a1")) And CLng(Range("a1")) <= 39813 Then Range("a1").Interior.ColorIndex = 4 End If End Sub 「and」なら2007/1/1より大きい なおかつ 2007/12/31より小さい と思い、最初はMacro2を作りましたが、うまくいかない為Macro1を作りました。 でも 「or」だと、2007/1/1より大きい もしくは 2007/12/31より小さい ですよね? 2008/1/1でも「2007/1/1より大きい もしくは 」にヒットしてしまうため、 andにしたのですが、なぜandではうまくいかないのでしょうか? よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- PythonからPhotoshopスクリプトを実行
PythonからPhotoshopスクリプトを実行し、返り値をもらうにはどうすればよいのでしょうか。 Pythonは2.x OSはWindows7 PhotoshopはCS4です。 やりたいこととしては、Photoshopと、ほかにもう一つ外部アプリケーション(MayaというCGのソフトです)を連携させたいと考えています。具体的には、Photoshopで保存した画像をCGソフトのほうで適用させたいです。 Photshopの返り値:セーブされた画像のフルパス Photoshopのスクリプトは.jsxで保存されています。 よろしくお願いいたします。
- 締切済み
- その他(プログラミング・開発)
お礼
なるほど、簡単な仕組みですね。どうもありがとうございました。