[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『日付と文字の結合エラー』(SKYTREE-NOW)
やりたいこと 当月月末年月日("yyyy/mm/dd")を任意の文字列と結合してセルにセット、 および結合して印刷ヘッダーに出力したい。
下記試行1、および試行2を実行しましたが
EXCEL2000では何れもOK、EXCEL2003では何れもエラーになります。
EXCEL2003でエラーにならない方法を教えてください。 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
試行1
Dim GETUMATU_YMD As Date
Range("AX3").Select Selection.NumberFormatLocal = "yyyy/m/d" ActiveCell.FormulaR1C1 = "=EOMONTH(TODAY(),0)" '当月の月末年月日をセット ' 関数⇒「値」に変換 Range("AX3").Select Selection.Copy Range("AX3").Select Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _ False, Transpose:=False ' GETUMATU_YMD = Range("AX3").Value
⇒ここで「実行時エラー'13':型が一致しません。」のエラーになる。
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
試行2
試行1のエラー解消のため GETUMATU_YMD をVariant型に変更
Dim GETUMATU_YMD As Variant ' Range("AX3").Select Selection.NumberFormatLocal = "yyyy/m/d" ActiveCell.FormulaR1C1 = "=EOMONTH(TODAY(),0)" '当月の月末年月日をセット ' 関数⇒「値」に変換 Range("AX3").Select Selection.Copy Range("AX3").Select Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _ False, Transpose:=False ' GETUMATU_YMD = Range("AX3").Value
AREA2 = "E" & i Range(AREA2).Select Selection.NumberFormatLocal = "@" Range(AREA2).Value = Application.WorksheetFunction. _ Text(GETUMATU_YMD, "yyyy/m/d") & ":月末日"
⇒ここで「1004 実行時エラー'1004':
WorksheetFunctionクラスのTextプロパティを取得できません」のエラーになる。
他のPCでも使う予定があるのであれば、EOMONTH()を使わず
以下の式(翌月の1日の日付-1を求める)に置き換えた方がよいと思います。
"=DATE(YEAR(TODAY()),MONTH(TODAY())+1,1)-1"
(kcIo5Z32)
アドイン設定後、EOMONTH関数で正常に終了しました。 ご教授いただきました式に置き換えた方も正常に終了しました。
他のPCで使用予定が有りますので、置き換えた式の方を完成版にいたしました。
アドイン設定についての知識がございませんでした。 貴重なご教授大変ありがとうございました。助かりました。
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.