VBやVBAの祝日判定用マクロ実装でのエラーについて
- VBやVBAの祝日判定用マクロをVB2008で実装しようとした際に、エラーが発生しました。
- エラーの原因は、文字列から日付型への変換が正しく行われないことです。
- このエラーを解決するためには、適切な方法で文字列を日付型に変換する必要があります。
- ベストアンサー
VBAおよびVB用の祝日判定用マクロ
VB2008です インターネットにて関数アドインを公開されているサイトがあり http://www.h3.dion.ne.jp/~sakatsu/holiday_logic.htm#VBA その祝日判定用マクロをVB2008で実装しようとコピペしたら その内容で Const cst振替休日施行日 As Date = "1973/4/12" (他同様行複数あり) の部分が『'String' から 'Date' への変換は定数式では発生しません。』とエラーが出ます ExcelVBAでは動作OKでした エラーの原因(VBでは直接文字列日付はダメ)はわかるのですが "1973/4/12"をDate型に変えようとDate.Parse("1973/4/12") に変えたら 『定数式が必要です。』とまたエラーが出ます ご教授お願いします
- Alshark
- お礼率62% (64/103)
- Visual Basic
- 回答数1
- ありがとう数1
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
いろいろな方法があったと思いますが、日付の定数は #月/日/年# と書くのが簡単だと思います。 [例] Const cst振替休日施行日 As Date = #4/12/1973#
関連するQ&A
- VB6で外部から静的アクセスが可能な定数
VB6で(正確にはExcelVBAですが)ちょっとプログラムを組んでいるのですが、 クラス内で、外部からアクセス可能な静的定数を宣言を行いたいのですが、 宣言方法が分からず止まってしまいました。 出来たかどうかも記憶にありません・・・。調べても分からず;; Static Const var As String = "hoge" みたいな事をしたいんですが、やり方が分かる方ご教示下さい。
- ベストアンサー
- Visual Basic
- const 宣言に式を使う。
クラス内の定数宣言でconstを使いたいんですけど、 constでは式を使うとエラーになるようで、 define() からそのまま const にすることができません。 どうにかしてconstで式を使えるように出来ないでしょうか?
- ベストアンサー
- PHP
- VB2008で定数に色の設定をしたいです。(初心者)
VB2008で定数に色の設定をしたいです。(初心者) VB2008初心者です。 定数に色の設定をしたいのですがなかなか上手く設定出来ません。 変数に設定は出来るのですが、 Dim COLOR As System.Drawing.Color = COLOR.Red 定数にした場合エラーになります。 Public Const COLOR As System.Drawing.Color = COLOR.AliceBlue 色々他も試してみたのですが・・初歩的な質問で申し訳ありません。 設定は「System.Drawing.Color」でなくても良いのですが、 どなかたかご教授頂きたく宜しくお願い致します。
- ベストアンサー
- Visual Basic
- const 宣言ができない。
バージョンは PHP 5.0.4 です。 5.0以降、constを使ってクラス内で定数を宣言できるようなのですが、 使うと Parse error: parse error, unexpected T_VARIABLE in ... とエラーが出てしまいます。 サポートしていないんでしょうか? 参考 http://phpspot.net/php/pg%83N%83%89%83X%93%E0%82%C5%82%CC%92%E8%90%94.html
- ベストアンサー
- PHP
- PHP5でクラス定数が使えますが
PHP5でクラス定数が使えますが 以下のようにFで A + Eや A | Eなどとすると、 Parse errorとなります。 クラス定数は数値、文字列、配列のみで、組み合わせは不可という仕様で良いのでしょうか? PHP5の仕様書というものはネット上で存在しているのでしょうか? 英語でも構いませんので、ご存知の方教えてください。 class Test { const A=1; const B="2"; const C=array(3); const E=4; const F=A+E; // ここでエラー } この場合の対策ですが、素直にPHP4のように defineを使えば良いでしょうか?
- ベストアンサー
- PHP
- vb.net 今日の日付を取得
vb.net 今日の日付を取得 vbaの Sub vba() MsgBox Date End Sub をvbでやるとどうなるのでしょう? Private Sub Button1_Click(ByVal s MessageBox.Show date End Sub だと、 エラー 1 'Date' は型です。有効な式ではありません。 エラー 2 メソッドの引数は、かっこで囲む必要があります。 エラー 3 '.' が必要です。 と、3つのエラーになります。 ご教授よろしくお願い致します。
- ベストアンサー
- Visual Basic
- VBAの定数の使い方で、計算値を定数に入れることは可能ですか。
VBAの定数の使い方で、計算値を定数に入れることは可能ですか。 例えば、モジュール先頭に、 Option Explicit Const TEISU_COUNT As Integer = Application.WorksheetFunction.CountA(Range("A1:IV1")) と書き、その下に、 Sub TestTeisu() MsgBox TEISU_COUNT '↑定数式が必要です、のようなエラーが出ます。なぜでしょう? 'エラー時、「.CountA」にスポットがあたります。 'つまり、ここがダメということでしょうか?やはり、この点が動的だからでしょうか? End Sub と書いて、実行。 結果は、上述の通り、エラーとなります。 やはり、定数値には、固定的な数値(上記例では、Integer)や文字列を入れるべきなのでしょうか。 定数に入れることのできる値の注意事項について、 どなたかアドバイスして頂けますでしょうか。 宜しくお願い致します。
- ベストアンサー
- Visual Basic
- 定数の設定について。
こんにちは!WIN2000、VB6、SP5で開発しています。 仕事で今プログラミングしてるのですが、定数で困ってます。 悩んでるのは、 定数を宣言する標準モジュールがあって、 そこの定数にINIファイルから読み込んだ値を代入して、 どこからでも読み込めるようにする。 というところなのです。 Public Const gstrMoji = "文字列" このように宣言すると分かったのですが、 例えば下のように、INIファイルから読み込んで文字列を入れようとすると、 Public Const gstrMoji = iniFileLoad("テスト", "答え") iniFileLoadのところで、定数式が必要です。とエラーになってしまいます。 ちなみに、iniFileLoadっていうのは、別のモジュールに書いた関数式?を呼んでます。 登録や編集してるフォームではちゃんと動いてるので、 コード自体に問題があるわけじゃないと思ってます。 ためしに、フォームロードとかで定数を宣言してやろうとしたら、 ここでは宣言出来ません。みたいになって、どうしていいか困ってしまいました。 INIファイルから読み込んだデータを定数に代入する方法、 ご存知の方いらっしゃいましたら、どうぞご教授よろしくお願いしますm(_ _)m
- ベストアンサー
- Visual Basic
- 定数配列の書き方
VB6で定数を定義する場合は次の通りです。 Const strTest As String = "TEST" では、定数配列を定義する場合はどのように書けばいいのでしょう? Const astrTest() As String = Array("A", "B", "C") '→NG Const astrTest(0 To 2) As String = Array("A", "B", "C") '→NG いろいろな書き方を試して見たのですが、上記のような書き方でも文法的にエラーになるようです。 どのように書けばいいのでしょうか? それとも定数を配列で定義するのは無理なんでしょうか?
- ベストアンサー
- Visual Basic
- 「定数式が必要です。」って何のこと?
ExcelVBAで作成したマクロでデータ抽出を行なっていたのですが、 数日前に動作していたマクロが、突然に、 「定数式が必要です」というエラーが出てきて動かなくなりました。 VBAの仕様が変わったのでしょうか? ★エラーの発生したモジュール Option Explicit Dim MailCc As String Sub Mailer() (中略) MailTo = Cells(RW_TO, 2).Text ' 宛先 → MailCc = Cells(RW_CC, 2).Text ' CC (以下略) ★同一プロジェクトの別モジュール Global Const RW_CC = 18
- ベストアンサー
- Visual Basic
お礼
なるほど~(^-^) 動作しました、ありがとうございます。独学でVBA・VBを頑張っているのですが、まだまだ知らないことが多くて悪戦苦闘の毎日です でもまたそれが楽しいんですがね(笑)