書式便利プロジェクト Mc_Calender.xls 使い方

和暦にこだわったカレンダー(日付入力フォーム) EXCEL書式の入力に活用して下さい。(VBAに関する知識が若干必要です)

目  次

1.白黒の書式の場合セル選択&Enter/Tabによる移動で起動します。
2.カラー印刷書式の場合セル選択&Enter/Tabによる移動で起動します。
3.機  能 
4.オプション機能 
5.祝日表について 
6.組み込み致します。1ファイル当たり5000円で請け負います。
7.更新履歴VerUp。「山の日」に対応。過去の祝日もカバーしました。

Returan TopPage

ファイルのダウンロード
※当サイトでは、当サイトの部品を使用した改造ファイルのダウンロード(フリーダウンロード)を行いたいと思います。
公開に当たりましては、個人情報に当たるデータはダミーデータに打ち換え致します。
多少の改造であるいはそのままの形で利用できる書式は、非常に便利なものです。
公開希望のファイルは、簡単な説明をつけてメールで送って下さい。

宛 先  mc_applicationsyahoo.co.jp (を@に打替えて送信して下さい)

公開の可否については、ホームページの容量の関係もございますので,勝手ながらこちらで査定させていただきます。

白黒の書式の場合

この方法は、Book全体のSelectionChange(セル選択位置の変更に伴い発生する)イベントを利用し、着色セルの色を起動条件にします。
長 所どのシートでもセル番地の指定をせずに起動させることができます。
短 所セル着色・文字色・フォントサイズ・フォント種類など、セル自体に特徴がなければなりません
印刷時に他の文字と区別がつかず入力時にわかりやすいという点でセル着色を条件にしています。
従って、白黒印刷書式にのみ使用できるというわけです。(コメントの有無・内容という選択肢もあるかも...設定は面倒そう)
セルクリックで起動しお手軽ですが、Enter/Tabキーによる入力確定操作にともない選択セルが移動したときにも起動し煩わしく感じることがあります。
設置手順
1.このBookと、使いたいBookの両方を開きます。

2.先方のThisWorkBookモジュールに以下のコードを貼り付けします。

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
If Target.Interior.ColorIndex = 8 Then '水色に塗りつぶしたセル
 With McCalender
  If IsDate(Target(1).Value) Then
    .日付窓.Value = Format(Target(1).Value, "ggge年m月d日")
  Else
    .日付窓.Value = Target(1).Value
  End If
  .Show
  If IsDate(.日付窓.Value) Then
   Target(1).Value = CDate(.日付窓.Value)
  Else
   Target(1).Value = .日付窓.Value
  End If
 End With
End If
End Sub

Visual Basic Editerを開く
ThisWorkBookモジュール
3.このBookからMcCalenderをエクスポートします。
わかりやすい場所へ置いて下さい。

4.先方のBookにMcCalenderをインポートします。
エクスポート/インポート操作のより簡単な方法

5.日付を配置するセルを水色に塗りつぶします。

6.ファイル-ページ設定-シートの印刷設定で白黒にチェックを入れます。

7.登録セルをクリックしてテストして下さい。

目次へ

カラー印刷書式の場合

この方法は、シート毎のSelectionChange(セル選択位置の変更に伴い発生する)イベントを利用し、セル番地を起動条件にします。
長 所セル番地による指定なので、きめ細かく設定でき、着色など印刷に影響を与えません。
短 所セル番地の設定が面倒です。
書式改造時に,セル番地の確認が欠かせません。
セルクリックで起動しお手軽ですが、Enter/Tabキーによる入力確定操作にともない選択セルが移動したときにも起動し煩わしく感じることがあります。
設置手順
1.このBookと、使いたいBookの両方を開きます。

2.先方のシートモジュールに以下のコードを貼り付けします。

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim StartCell As Range, a As Range, MyF As Boolean

Set StartCell = ActiveSheet.Range("A1,B2,C3") '使いたいセルの登録
For Each a In StartCell.Areas
 If Not Intersect(a.MergeArea, Target(1)) Is Nothing And _
  Not Intersect(a.MergeArea, Target(Target.Count)) Is Nothing Then
   MyF = True: Exit For
 End If
Next

If MyF Then
 With McCalender
  If IsDate(Target(1).Value) Then
   .日付窓.Value = Format(Target(1).Value, "ggge年m月d日")
  Else
   .日付窓.Value = Target(1).Value
  End If
  .Show
  If IsDate(.日付窓.Value) Then
   Target(1).Value = CDate(.日付窓.Value)
  Else
   Target(1).Value = .日付窓.Value
  End If
 End With
End If
End Sub

シートモジュールを開く

3.セル番地を変更する。
※注意 使いたいセルの番地を必ず確認して下さい。
カンマ区切りでいくつでも登録できます。
番地は左上のセルを登録して下さい。
シートモジュールはシートタブを右クリックして「コードの表示」で出すことができます。
このコードはセルのクリック(選択範囲の変更)で起動します。
4.このBookからMcCalenderをエクスポートします。
わかりやすい場所へ置いて下さい。

5.先方のBookにMcCalenderをインスポートします。
エクスポート/インポート操作のより簡単な方法

6.登録セルをクリックしてテストして下さい。
目次へ

機  能

各部名称 書込済みのデータをまず日付窓に表示します。
年、月に合わせてカレンダーを更新します。
入力でセルに日付を入力します。
日ボタンのダブルクリックでも入力を行います。

オプション機能

日付窓を右クリックすると、オプションが表示されます。
オプション機能
日付未定日付を空欄とします
月日未定月日を空欄とします
年月日未定年月日を空欄とします
年号・年月日未定年月日のみ表示します
消去一切表示しません
元の値に戻す元の入力値に戻します
目次へ

祝日表について

過去の祝日の判定は行っていません。
現在の祝日判定に基づいて計算しますので、祝日法改訂前については正しくありません。
今後の祝日改訂の際は,ご一報下さい。修正します。

組み込み致します。

ここではできるだけ詳しくカレンダーフォームの組み込みについて解説したつもりですが、どうしてもうまくいかない場合はお手伝いさせていただきます。
1ファイルあたり5000円の手数料が必要になります。
メールで、利用したいとお考えのExcelファイルを次のアドレスへ送って下さい。
ご氏名とご住所でつきあわせいたしますので、必ず以下の送信内容と同じ内容をメールに書込んで下さい。

下記の様式に必要事項を入力し送信して下さい。
宛 先  mc_applicationsyahoo.co.jp (を@に打替えて送信して下さい)

ご氏名:
 
ご住所:
 
組込依頼:
カレンダー組込依頼料
公開希望:
公開してもよい/公開しない(いずれかを記入)
ファイル名:
○△×.xls
メールアドレス: 

最寄りの郵便局で5,000円を振り込みして下さい。
青インクで印刷された「払込取扱票」に口座番号・金額を書込み窓口またはATMから送金して下さい。
口座番号02750-8-97414
口座名義MC-Applications
送金金額5,000円
ゆうちょ
手数料
窓口:140円
ATM:80円

記入イメージ
払込票イメージ
ファイル名を必ずお書き添え下さい。

目次へ

Returan TopPage


付録:用語解説

Visual Basic Editerを開く

Alt+F11キーで開くことができます。(ショートカットキー)
または、メニューバーのツール-マクロ-Visual Basic Editerで開けます。

ThisWorkBookモジュール

プロジェクトエクスプローラで、「ThisWorkBook」をダブルクリックすると現れるコードウィンドウ。
コードウィンドウ

シートモジュール

プロジェクトエクスプローラで、シート名をダブルクリックすると現れるコードウィンドウ。
エクセルシート画面でシートタブを右クリックしコードの表示とするとそのシートのコードウィンドゥを表示できる

エクスポート

フォームやモジュールを専用形式のファイルとしてExcel外部に保存する機能。
モジュール名を選択し右クリックメニューからファイルのエクスポートで、外部に保存できる。
わかりやすい場所に保存すること。

インポート

エクスポートで保存したファイルを取り込む機能。
いずれかのモジュール名を選択し右クリックメニューからファイルのインスポートで、外部に保存保存されているモジュールやフォームを取り込むことができる。

エクスポート/インポート操作のより簡単な方法

プロジェクトエクスプローラ VBAProject(Mc_Calender.xls)内からモジュールを上のVBAProject(Book2)内へ(括弧内は移植先のファイル名) ドラッグするだけです。

この方法は,標準モジュール・フォーム・クラスモジュールで有効ですが、シートモジュール(Sheet1等と表示されている)やThisWorkBookモジュールでは使えません。

シート・ブックモジュールのコードの移植は、それぞれのウインドウを開き、編集メニューからすべて選択、 コードウィンドウで反転している文字の上で右クリックしてコピー、(編集メニューのコピーでもよい)します。

移植先(ここではBook2)の同じコードウィンドウ上を右クリックして貼り付け(編集メニューの貼り付けでもよい)とします。
目次へ

更新履歴

Ver.Up Date
内   容
2016/06/29「山の日」に対応。過去の祝日を表示できるように修正。

Returan TopPage