- ベストアンサー
excel関数について
現在、EXCELで会社の注文書を作成しています。合計金額が入力されると同時に合計金額入力して日を発行日として表示したいのですが、その発行日が次の日になると変わってしまいます。良い方法はないでしょうか?日付が入るセルには以下の関数を入れています。 =IF(C15,TODAY()," ") できれば関数で教えてください。よろしく お願いします。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
TODAY関数は、そういう特徴を持った関数です。 これが普通は便利なんですが。 だからTODAY関数は使えません。 (1)シートの自分で決めたセルに1回だけ日付を入れておき、そこを参照。 しかしそのシート(のそのセル)を別の日の当日なんてで置き換えて使うと、全部がその日に置き換わってしまう。 (2)CTRL+;を使う。これが結構便利。 (3)VBA C列でダブルクリックすると、アクチブセルに当日日付(マイナス1日=前日の決めでも良い。下記プログラムでは Date()-1に変える)にする約束 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Target.Column = 3 Then ActiveCell = Date End If End Sub (4)(エクセルで使える)カレンダーコントロールを使う http://www.eurus.dti.ne.jp/~yoneyama/Excel/vba/vba_calendar.html (この例はフォームに貼り付け版だが、そのシートに貼り付け版もできる)
その他の回答 (5)
- turuzou
- ベストアンサー率33% (15/45)
下記も参考になりそうです。 Excel(エクセル) VBA入門:ワークシートのイベント http://www.eurus.dti.ne.jp/~yoneyama/Excel/vba/vba_event.html の Changeイベント
- imogasi
- ベストアンサー率27% (4737/17069)
#4です。 >(3)のCalendar1ボタン ボタンでなく、ダブルクリックで発動します。 例えばSheet1シート+C列(#4のコードでは)+ダブルクリックで発動します。 Sheet1のシート・タブ部で右クリックし、コードの表示、 左をWorksheet、右をBeforeDoubleClickを選択し、#4のようにコピペ。 右や左と言うのは(General)と(Declaration)と見えている部分のそれぞれの▼をクリックして選びます。
お礼
ありがとうございます。(3)を使わせて頂きます。
- Sinogi
- ベストアンサー率27% (72/260)
まるっきり蛇足ですが・・・・ コントロール+セミコロン Ctrl ; の同時押しで本日の日付が入力できます。
お礼
大変にありがとうございました。参考になりました。
- sky-plane
- ベストアンサー率37% (33/88)
TODAY関数についての説明をします。 TODAY関数は入力した日の日にちを返す関数ですよね。これはご存知だと思うのですが、よくよく読んでみると原因が分かると思います。 今日の日付を返すんですよ。今日の日付を。 TODAY関数は入力した時の日付だけではなくファイルを開いたときの日付に更新してしまいます。すると、次の日には次の日の日付が表示されるのです。 これの解決策としてはTODAY関数を使わないようにしましょう。 具体的なやり方は、今日の日付は手で入力するようにすればいいのです。なので、シート上のどこのセルでもいいので今日の日付(例:2009/7/14)を入力します。次にこの数式 =IF(C15,TODAY()," ") のTODAY()の部分を日付を入力したセル番地を指定しましょう。 例:セルA1に日付を入力した場合 =IF(C15,A1," ") こんな感じです。 分からないところがありましたらご報告お願いします。
お礼
大変にありがとうございました。検討いたします。 "シート上のどこのセルでもいいので今日の日付(例:2009/7/14)を入力します。"について質問です。 直接=IF(C15,A1," ")を入力したセルに今日の日付を打ち込むのと同じことですよね?
- bluecampus
- ベストアンサー率66% (138/209)
>できれば関数で教えてください。 たぶんマクロを使わないと実現不可能だと思います。 VBAの質問でないのであれば、 [技術者向] コンピューター > 業務ソフトウェア > 会計ソフト http://oshiete1.goo.ne.jp/c234.html の方が適切かと。
お礼
詳しく教えて頂き大変にありがとうございました。すべて有効ですので、どれを使うか検討します。ちなみに(3)のCalendar1ボタンはどのうようにして作成すればよいのでしょうか?