§7 FAQ(回答)

Q1 文字化けしてるんですけど‥‥‥。
A1 休日マップデータのことですね。休日マップデータ自体はサイズが大きいので『圧縮』してからセルに書き込ませる事が出来るようにしています。バイナリーデータが文字化けして表示されている訳ではないので安心して下さい。
    【ノーマルデータ】
         fPEfRBbBGY*-*-----**----*-*-----**------*- ‥‥‥
    【圧縮データ】
         fPEfRBbBGYoMKDAgRYEGBBgYYEGBBieYEGBAgwI ‥‥‥

11文字目以降がカレンダーデータになっていますが、これを圧縮すると、ご覧のように英数字の羅列になり〔1474→254文字(4年間)〕まで小さくなります(圧縮後は[A〜Z,a〜z,0〜9,+/]の64種類の文字で記録されます)。尚、先頭の10文字は作成日時などが記録されており、最初から圧縮されています。休日マップデータのセルにカーソルを移してから『kt関数メニュー(休日Map情報)』をクリックすると、その情報が表示されます。
[ 戻る ]
Q2 休日マップには「ノーマル」と「圧縮」がありますけど、どちらを使えば良いんですか?
A2 「ノーマル」と「圧縮」のどちらを使っても同じ結果が得られます。

「圧縮」を用意した理由は、ワークシート全体のコピーを行なう場合に【255文字を越えるデータは256文字以降が欠落する】という制限条項に対処する為です。『4年間』の場合は圧縮すると『254文字』になりますので、この制限条項をクリアします。ただし、「圧縮」を渡すと内部でその都度【解凍処理】が動く為、営業日計算などを連続して実行する場合などには注意が必要です。
[ 戻る ]
Q3 kt関数が使えません。
A3 ワークシート上で利用する場合は『kt関数Addin』がアドイン登録されているだけでOKですが、VBAから利用する場合は、ブックごとに『kt関数Addin』を【参照設定】する必要があります。
[ 戻る ]
Q4 分析ツール「WORKDAY 」では「祝日」を渡してましたけど、kt関数では必要ないんですか?
A4 kt関数では「現行の祝日法で制定されている祝日」は全てアドイン側で自動認識できますので、ユーザー側で用意する必要はありません。

パラメータ「休日Map」に【固定休日】を指定する場合は『8文字目を"1"』とすると祝日/振替休日を休業日として処理します。


[ 戻る ]
Q5 「kt閉じるボタン」でExcelの閉じるボタンを無効化出来ない
A5 UserForm も Excel も同じAPIを使って閉じるボタンを無効化出来ます。
しかしながら、閉じるボタンを無効化するだけで「終了手段を別に設ける」ことをユーザーが忘れる可能性を考慮して、【安全】の為に敢えてサポートしていません。

どうしてもExcelの閉じるボタンを無効化したい方は、下記書籍などを参考にして各自でAPIを組んでください。
    エーアイ出版 刊 大村あつし 著
    『VBAユーザーのための、Win32APIプログラミングガイド』
[ 戻る ]
Q6 基本的に「土曜日」は休業日なんですが、年に数日だけ出社日の場合があります。休日マップでどうのように設定すればいいですか?
A6 「休日マップの作成」で、先ず【全ての土曜日】を休日にした後、『特定日の日付』に、その例外的に出社日となる日付を入力し【休日解除】ボタンをクリックしてください。
[ 戻る ]
Q7 特定日の日付入力欄に複数の日付を一度に入力する(2000/1/2,3という風に)ことは出来ないのですか?
A7 特定日の日付入力欄はダブルクリックすると、カレンダーフォームが開くようになっています。入力欄が空白の場合は【本日日付の”月”】で表示されますが、日付が入っていれば、その日付の【年月】で表示されます。カレンダーフォームで「2000/1/2」を入力して休日指定した後にそのまま(入力欄に「2000/1/2」と表示されたまま)ダブルクリックすると、「2000年1月」で表示され「2000/1/2」が休日表示のピンクになっていますから、続けて「3日」をクリックして日付を入力してください。
[ 戻る ]
Q8 ワークシートに記述した「kt関数」が【#NAME? 】になってしまった。
A8 【#NAME? 】が出る前に『kt関数Addin.xlaへの参照設定』を解除してませんか?再び「参照設定」を付けてやれば元に戻ります。

(原 因)
「kt関数アドイン」に限らず、アドイン登録されたユーザー定義の外部関数をワークシートに記述すると『外部参照式』になります。

〔=kt祝日名取得("2000/5/5") 〕という式を書き込むと、アドイン登録されたブックから、その名前を検索して、

       ='C:\Program Files\Microsoft Office\Office\Library
               \kt関数Addin.xla'!kt祝日名取得("2000/5/5")

という風に外部参照式が作成されます(外部参照部分の表示はされません)。

しかし、『kt関数Addin.xlaへの参照設定』が有る状態で式を書き込むと、参照設定経由で名前が見つかる為に、外部参照式が作成されず、単に〔=kt祝日名取得("2000/5/5") 〕としてセルに書き込まれます。

この後で参照設定を解除すると、単に〔=kt祝日名取得("2000/5/5") 〕と書き込まれた式は、外部参照を持っていないので、書き込まれているブックから名前検索することになりますが、その名前の関数が存在しないので【#NAME? 】が表示されます。

ワークシートに関数を記述する際は『参照設定を一旦解除』するようにすれば、このようなトラブルは回避できます。

尚この理由で #NAME? になっているセルがひとつでもあると、元々正しくアドイン参照で書き込まれたフルパスを持つ同じ関数を使う式も、再計算が行なわれる際に「参照設定経由の関数式」の仲間にされて #NAME? になってしまいます。


参照設定を付けない状態でブックを使う場合は、「編集/置換/全て置換」を使って以下のようにすれば復旧できます。
   =kt祝日名取得("2005/5/5")
となっているとすると、kt祝日名取得
    'C:\Program Files\Microsoft Office\Office\Library\kt関数Addin.xla'!kt祝日名取得
で置換します。

こちらのFAQ ( Q22 , Q29 ) も参照のこと。

[ 戻る ]
Q9 カレンダー入力フォームの呼び出しを『右クリック』にしたい。
A9 「休日マップ作成」「暦シート作成」での呼び出しは『ダブルクリック』だけです。
関数【ktCalDate 】をシートモジュールのマクロに記述する場合なら、利用するイベントプロシジャーを『右クリック』に変えればOKです。

全てのワークシートで利用する場合は「ThisWorkbook」モジュールに下記を記述
Private Sub Workbook_SheetBeforeRightClick _
      (ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
  Dim MyDate As Date
  If (Target.Column = 1) Then
      If ktCalDate(MyDate, Target.Value ) Then
          Target.Value = MyDate
      End If
      Cancel = True
  End If
End Sub

あるワークシートだけで利用する場合は「そのシート」のモジュールに下記を記述
Private Sub WorkSheet_BeforeRightClick _
      (ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
  Dim MyDate As Date
  If (Target.Column = 1) Then
      If ktCalDate(MyDate, Target.Value ) Then
          Target.Value = MyDate
      End If
      Cancel = True
  End If
End Sub

UserFormの場合、右クリックに対応するイベントプロシジャーはありません。『MouseDown 』イベントで【ボタン番号】を確認して対応できますが、何故か右クリックでは『MouseDown 』が2回連続して発生していますので、止めた方が良いです。
[ 戻る ]
Q10 ktPeriodYMDの計算方法のどれを使ったら良いんですか?
A10 私の方から「これを使ってください」「これが一番正しい」という推薦は出来ません。利用される方の職場の事務手続きで定められている計算方法に合ったものを使ってください。

日本での期間計算は、 『特に定めがない場合は民法に従う』というのが基本です。
「民法に従う計算」は "1a"です。 尚、Ver 4.00から ktDATEDIF 関数も追加されています。
[ 戻る ]
Q11 暦作成で作ったカレンダーに色が付かないんですが?
A11 カレンダーを出力したブックのカラーパレットを『カスタマイズ』していませんか?「kt暦作成」が設定しようとしているカラーが出力先ブックのカラーパレットに存在しない場合は、そのカラーを設定しないようにしています。
    (参考 : ktColorIndexGet )
[ 戻る ]
Q12 『条件付書式』の条件式でkt関数を記述するとエラーになります
A12 『条件付書式』の条件式にアドイン関数などの、外部ブックに在る関数は指定できません。kt祝日判定などを使ってセルに色を付ける等の効果を施す場合は、非表示のダミー列を用意して、そこに条件式を記述し、『条件付書式』ではダミー列の結果を参照するようにします。
[ 戻る ]
Q13 祝日法の改正に伴う注意事項
A13 祝日の改正に伴い、既に作成済みのワークブックに対して下記の点に留意して下さい。

  ( a ) 改正された「祝日」以降の日付に対して「kt営業日算出/kt営業日数」等を
        適用しているデータについては、祝日日付の変更により結果が変わってくる
        場合がありますので、【再計算】する必要があります。

  ( b ) 『固定休日コード』を使っている場合は、そのまま【再計算】させて下さい。

  ( c ) 『休日マップ』を使っている場合は、『休日マップ作成』フォームの【読込機能】
        で【マップデータ】を「改正後の祝日法」に適合した内容へ変換できます。
        ただし、この機能を利用するには、【カレンダー出力】により出力された『休日
        設定条件』が必要です。

  ( d ) マクロで「kt営業日算出/kt営業日数」の結果を書き込んでいる場合は、その
        マクロの再実行(もしくは関連する部分だけを再計算させるマクロを作って
        実行する)が必要になります。
 
[ 戻る ]
Q14 『ktSound 』によるWave 音が止まらない
A14 「非同期/連続再生」で実行した場合は、『停止』指示を出すまで延々と再生が続きます。開発中に停止手段を用意する前に連続再生してしまった場合や、何らかの原因で停止指示を出す前にエクセルがダウンしてしまった場合などに対処する為に、『kt関数メニュー/バージョン』画面に【再生停止ボタン】を用意してあります。
[ 戻る ]
Q15 『kt関数メニュー 』が消えてしまった
A15 他のエクセルフリーソフトでは、自分用に追加したメニューを削除するのに「Reset 」メソッドを使っているものがあります。Resetメソッドでは『標準メニュー』がインストール後の初期状態に戻りますので、【kt関数メニュー 】も消えてしまいます。そのような場合は、下記のいずれかの方法で復元して下さい。

(1) 新規ブックを開き、[ツール→アドイン]で【kt関数Addin 】のチェック
      外してOKし、一旦アドイン解除します。その後、再びチェックを付けて
      アドイン登録すれば、メニューが戻ります。

(2) 新規ブックを開き、VBEで標準モジュールを挿入して、下記マクロを
      コピペ します。
          Sub メニュー復元()
              Call kt関数Version
          End Sub
      VBEの[ツール→参照設定]で【kt関数Addin 】にチェックを付けて
      から、上記マクロを実行すると、『バージョンフォーム』が表示されます
      コマンドバー → 標準メニューバー 】と書いてあるボタンをクリック
      すれば、メニューが戻ります。終わったら、使った新規ブックは破棄
      して下さい
(補) Ver 4.00 より、メニューの「コマンドバー」指定が廃止(標準メニュー
   バーのみ)された為、(2) の方法は利用できません。

[ 戻る ]
Q16 タスクバーに[kt関数Addin.xla]と一瞬表示される
A16 Ver2.60から、関数貼付ダイアログにおいて、kt関数アドインの関数を〔ユーザー定義〕カテゴリから、専用の【kt関数アドイン】カテゴリに移しました。アドイン読み込み時に【kt関数アドイン】カテゴリを増設する処理の中で一時的に[kt関数Addin.xla]のアドイン属性を解除している為、『タスクバーに[kt関数Addin.xla]と一瞬表示』されます。利用に際し支障の出るものではありませんので気にしないで下さい。

実寸で表示します

[ 戻る ]
Q17 エクセル終了時に[kt関数Addin.xla]の保存確認ウィンドウが表示される
A17 Ver2.60において、この不具合がありましたが、【Ver2.61】にて修正しました。

【kt関数アドイン】カテゴリ増設の為に『マクロシートでの名前定義』を
行なっています。元々、処理後に[Saved=True]にて保存回避するよう
処置してありましたが、動作環境によって再び[False]状態になっていた
ようです。アドインブックが閉じられる前に再度[Saved=True]にて処置
するようにしました。
この症状が出るケースの一例としては、エクセル起動中に
      『画面のプロパティ / デザイン』においてフォント等を変更
を行い、その後エクセルを終了させると「保存確認ウィンドウ」が出ます。

[ 戻る ]
Q18 CreateObjectで呼び出した時に[kt関数Addin.xla]でエラーになる
A18 Ver2.60〜2.70において、この不具合がありましたが、【Ver2.72】にて修正しました。

[kt関数Addin.xla]への参照設定を持つブックを、『CreateObject 』で起動したエクセルの下でオープンする場合に、関数カテゴリの増設処理で利用している『Excel4Macro』が動作しないのが原因です(エクセルの仕様によるものと思われます)。エラーダイアログを無視すると、そのまま正常に使えますが、終了時に[kt関数Addin.xla]の保存確認ウィンドウが表示されます。

「アクセスからエクセルブックを操作する」といった処理などが、このケースに該当します。


[ 戻る ]
Q19 Workbooks.Open の戻り値が[kt関数Addin.xla]を指してしまう
A19 下記のマクロで、[oWkbk]が指し示すブックが[kt関数Addin.xla]になります。
    Dim  oWkbk  As  Workbook
    'Book1.xls は kt関数Addin.xls への参照設定を持つ
    Set  oWkbk  =  Workbooks.Open(Filename:="C:\〜\Book1.xls")
    MsgBox  oWkbk.Name  '←[kt関数Addin.xla]が表示されます

Ver2.50 までは、正しく[Book1.xls]が設定されていました。
Ver2.60 から導入した【kt関数アドイン】カテゴリの増設処理で、一時的にアドイン属性を解除している為、「参照設定」経由で一緒に読み込まれる際に[kt関数Addin.xla]が[Book1.xls]の前面に出てしまうのが原因です(Q16参照)。

以下のようなマクロに改める事で回避できます。
    Dim  oWkbk  As  Workbook
    'Book1.xls は kt関数Addin.xls への参照設定を持つ
    Workbooks.Open  Filename:="C:\〜\Book1.xls"
    Set  oWkbk  = Workbooks("Book1.xls")


未だ[kt関数Addin.xla]が読み込まれていない状態で実行する場合に、Book1.xls と一緒に[kt関数Addin.xla]も読み込まれる為に起きる症状ですので、『アドイン登録』などにより、既に読み込み済みの状態ならば問題はありません。

[ 戻る ]
Q20 CreateObjectで、アドイン登録済の[kt関数Addin.xla]が読み込まれない
A20 『CreateObject 』でエクセルを起動した場合にはアドインブックが読み込まれないという仕様がある為に、「アクセスからエクセルブックを操作する」というような処理においては注意が必要です。
     --- サポート技術情報 ---
      [XL] CreateObject を使用しているとアドインが読み込まれない

参照設定が付けてあるブックを読み込む場合ならば、「参照設定」経由でアドインが読み込まれますが、参照設定が付いていない(アドイン登録のみ、エクセルシート上での[kt関数]利用のみ)ブックを『CreateObject 』で開く場合には、そのブックに先立ち下記のように[kt関数Addin.xla]も開いておく必要があります。

  Dim oApp As Excel.Application
  Dim oWkbk As Excel.Workbook
  Dim cstAddinPath As String

  Set oApp = CreateObject("Excel.Application")
  ' [C:\Program Files\Microsoft Office\Office\Library]
  cstAddinPath = oApp.LibraryPath

  With oApp.Workbooks
      '先に[kt関数Addin.xla]を読み込む
      .Open FileName:=cstAddinPath & "\kt関数Addin.xla"
      .Open FileName:="C:\〜\Book1.xls"
  End With
  Set oWkbk = oApp.Workbooks("Book1.xls")
  'oApp.Visible = True      '←必要ならば
  'oApp.UserControl = True  '←必要ならば

[ 戻る ]
Q21 Ver2.60〜2.72で、Excel97 の場合にアドイン登録時にエラーとなる
A21 【Ver 2.73 / 2.80】 で修正しました

--- 障害原因 ---
・ ktMsgBox/ktMsgBoxEX関数の[Buttons]引数の自動メンバ表示を行なうには、
  属性を[As vbMsgBoxStyle]とする必要があるが、Excel97では[As vbMsgBoxStyle]
  がコンパイルエラーになる為、[As Long]で代替する事になる。
・ このExcel97/Excel2000以降での属性の切り替えの為に、関数定義(Function文)
   を『条件付コンパイル』で対応していた。
・ 関数貼付ダイアログでのカテゴリ/コメント定義を行なう「MacroOptionsメソッド」
  実行時に、 この条件付コンパイルが巧く機能していないようで、Excel97の場合
  でも[As vbMsgBoxStyle]の方を参照しているようで、エラーが発生する。

--- 対処 ---
  カテゴリ/コメント定義を止める訳にはいかないので、Excel2000以降での自動
  メンバ表示を諦める事にして、条件付コンパイル部分を取り除いてエラー発生
  部分を無くします。したがって、今後は、VBEで直接[ktMsgBox/ktMsgBoxEX]
  をパンチする際に、[vbOKCancel,vbCritical等]の表示は出て来ません。ウィザ
  ードを使えば、これらの定数も自動的に記述してくれるので支障は無いと考えます。

[ 戻る ]
Q22 ブックを別ドライブ/フォルダに移動すると[#NAME?]になる
A22   アドインフォルダを「”アドインで保存”の際の既定フォルダ」である
      [ C:\Windows\Application Data\Microsoft\Addins ]
にしている場合、アドイン利用ブックを別ドライブ/フォルダへ移した場合に[#NAME?]になります(エクセルの機能で外部参照式が自動的に移動先フォルダに合わせて変更される為)。
  このエラーは[編集→リンクの設定→リンク元の変更]を行なう事で解消できます。ただし、ブックを移動させる度に[リンク元変更]の操作が必要になります。

  もうひとつのアドインフォルダである、『Application.LibraryPath 』で示される
      [ C:\Program Files\Microsoft Office\Office\Library ]
の方にすると、アドイン利用ブックを、別ドライブ/フォルダへ移しても[#NAME?]にはなりません(上記のパス名はいずれも、Windows98SE/Excel2000の例)。

  [ Excel Tips14: Addin関数式のリンクエラー ] で詳しく解説してあります。
  [ Excel Tips21: Excel のリンクの管理と格納 ] の併せて読んでください。

こちらの FAQ ( Q8 , Q29 ) も参照してください。

[ 戻る ]
Q23 Ver2.80 をExcel2002 で使うと実行時エラーになる
A23 【Ver2.81】 で修正しました。

--- 症 状 ---
  アドイン登録時には問題ないが、その後でエクセルを起動した時に、実行時エラーが発生し、kt関数をアドインしている限り、ブック操作が出来なくなる。
--- 障害原因 ---
  Ver2.80から、ktMsgBox(Ver3.1x)用にフォントリストを書式メニューバーのFont-ComboBoxから取得していますが、ここにアクセスする為にはActiveなWorksheetが存在する必要があります。エクセル起動時のアドイン読み込み時点では、ActiveなWorksheetが存在しない為、一時的に「アドイン属性解除」を行って対処しています。Excel97/2000では、これで問題なく取得できますが、Excel2002においては、「アドイン属性解除」を行なってもFont-ComboBoxにアクセスできない為に実行時エラーになりました。アドイン登録は、白紙ブックなり、何かブックが開かれている状態で行いますから、ActiveなWorksheetが存在し、Font-ComboBoxへのアクセスが可能であり、その為にエラーにはなりません。
--- 対 処 ---
  フォントリストの取得をAPIにより、直接取得するように変更します。ただし、Excel97では使えない[AddressOf]演算子が必要な為、条件付コンパイルによって、Excel97では従来通りに書式メニューバーより取得します。

[ 戻る ]
Q24 kt関数メニューを実行しようとすると下記のエラーが出る
「'kt関数Addin.xla'と同じ名前のファイルが既に開いています」
A24 【Ver5.00】で対応済みです。
CommandBar による メニュー ( xla 版 ) を [ Temporary = True ] タイプに変更しました。
( Ver 5.00 / xlam 版は リボンUI になりました)

一端、アドイン解除を行なった後、再度アドイン登録を行なって、メニューを再作成させれば直ります。

  kt関数アドインでは、メニューの作成を「アドイン登録」時に保存タイプで行なっています(エクセルを終了させても残り、次回起動時にも使える)。
  メニューに登録されるマクロの実行情報にはフルパスが含まれます。そのブックが未だ開かれていなければエクセルがマクロ実行の為に自動的に開きます。
  当然、kt関数メニューには、kt関数Addin.xlaのフルパスが含まれていますが、それは「アドイン登録」を行なった時点でのパスです。
  もし、その後にkt関数Addin.xlaを別フォルダーへ移す(アドイン解除はしていない時に)と、メニューに登録されているパスと、起動中のkt関数Addin.xlaのパスが異なる事になります。そうすると、エクセルは先に説明したようにメニューに登録されたブックを開こうとしますが、そのブック名もまたkt関数Addin.xlaです。
  エクセルでは、パスが異なっても、同じブック名のブックは同時には開けないという仕様があります。したがって件のエラーメッセージが表示される事となります。
  この問題はメニューのパスを現在実行中のパスに直せば回避出来ますが、その為にはメニューを再作成する必要があります。メニューを再作成するには、一端アドイン解除によりメニュー削除を行い、その後再度アドイン登録する事によって対処できます。

[ 戻る ]
Q25 『Ver2.90 → Ver3.00』の変更と祝日法改正(昭和の日)に関する注意
A25 2005/5/20 に「昭和の日」法案が公布されました(2007/1/1 施行)。
祝日関連機能の「昭和の日」対応は Ver3.00 にてサポートします。
直近で影響の出る(休日日数の増加)年は
    2008年(5月6日[火曜] ) と 2009年(5月6日[水曜] )
です。

その他の注意点については『Q13』と同様です。

[ 戻る ]
Q26 『Ver3.00 → Ver4.00』の変更と祝日法改正(山の日)に関する注意
A26
2014/5/30に「山の日」改正祝日法が公布されました(2016/1/1 施行)。
祝日関連機能の「山の日」対応は Ver 4.00 にてサポートします。

その他の注意点については『Q13』と同様です。

[ 戻る ]
Q27 kt関数メニュー/カレンダーマーク描画 および ktCalShape/ktCalShape2で、
「枠線のみ(塗り潰し無し)」指定が【塗り潰し】になる
A27 【Ver4.00】で修正しました

Excel 2007以降で上記の不具合がありました。

「枠線のみ ( 枠線内透過 = 塗り潰し無し)」 の指定は
Excel 2003以前では、[ Shape_Object.Fill.Visible = False ] のみで OK でしたが、Excel 2007以降では、同時に [ Shape_Object.Fill.Transparency = True ] の指定が必要でした。

[ 戻る ]
Q28 グラフオブジェクト を選択した際に kt関数メニュー が消える
A28 【Ver4.00】で修正しました

Excel 2007以降でのExcelの不具合に依るものです。

CommandBar オブジェクトで作成したメニューは、Excel 2007以降ではアドインタブに収録されます。
その内、標準メニューバー ( "Worksheet Menu Bar" ) 内に作成されたユーザーメニューについては、シート上のグラフオブジェクト を選択した際に 【 アドインタブ から消える 】 というエクセル の不具合があります。
  [ KB2648925 ] https://support.microsoft.com/ja-jp/kb/2648925
この時、アドインタブに収録されている ユーザーメニュー が他に無ければ、アドインタブ自体も消えます。
[ ツール メニュー配下 ] など、標準メニューバー以外に作成した ユーザーメニューであれば、この不具合は起こりません。

Excel2003以前は「標準メニューバー内」、Excel2007以降は「ツールメニュー配下」という方法で対処しました。

[ 戻る ]
Q29 他から貰った 『kt関数アドインを使っているワークブック』 が リンクエラー および [ #NAME! ] になる。
A29 Ver 4.00 では、下記の 2つのアドインブックを提供しています。
    ( a ) 97-2003 形式 の kt関数Addin.xla
    ( b ) 2007 形式 の kt関数Addin.xlam
機能は全く同じですが、Excel 2003 以前では ( b ) の アドインブックは使用できません。

その ワークブック を作成したPCの環境 と 貴方のPCの環境で、インストール してある アドイン に ( a ) と ( b ) の 違いが無いでしょうか?

( a ) の環境と ( b ) の環境の間で、kt関数を ワークシート 関数として使用しているワークブック を交換すると リンクエラー になります。
( 参照 : §2 登録と削除 / 3. kt関数アドインの登録

どちらか 一方に 統一して インストール してください。 97-2003 形式の方 ( .xla ) であれば、Excel 2007以降でも利用できますので、xla に統一した方が良いです。

こちらの FAQ ( Q8 , Q22 ) も参照してください。

[ 戻る ]
Q30 [ 標準 ] 画面の右クリックメニューを変更できない。
右クリックメニューの変更を行なうと [ 改頁プレビュー ] 画面の方に反映される
A30 【Ver 4.00】 で修正済みです。
『標準・改頁プレビュー』 両方の右クリックメニューに kt関数コマンドを追加するようにしました。

Ver 3.00 までは、一部の稀な PC で、そのような症状を起こす場合がありました。

--- 原 因 ---
『標準・改頁プレビュー』 両方の 右クリックメニューの名前は "Cell" という 同じ名前であり、通常であれば、[ 標準画面 ] 用 ⇒ [ 改頁プレビュー画面 ] 用の順でシステムに登録されています。

ところが、稀に、[ 改頁プレビュー画面 ] 用 ⇒ [ 標準画面 ] 用の順で登録されているPC が存在します。

最初に見つかった方(通常は標準画面のメニュー) にのみ追加した場合、この稀なPC では 「標準画面」 の右クリックメニューには追加されず、「改頁プレビュー画面」 の右クリックメニューに追加されます。

[ 戻る ]
Q31 Excel 2013 で [ kt関数メニュー ] [ 右クリックメニュー ] の
変更(追加・削除)が反映されない。
A31
【Ver 5.00】にて対応済みです。
メニュー作成方法を見直しました。これに伴い、アドイン登録手順も簡易になりました

Excel 2013 から Excel ウィンドウ が SDI ( Single Document Interface ) になった影響です。

メニュー変更を伴う
    ( a ) アドイン登録 ( kt関数メニューが 追加 されます )
    ( b ) アドイン解除 ( kt関数メニューが 削除 されます )
    ( c ) [ kt関数メニュー/バージョン情報 ] での右クリックメニューの変更
の操作は、
      『新規ブック が 1つのみ』 の状態
で行ない、その操作後には、
      メニュー変更を Excel 全体に反映 させる為に 一旦 Excel を終了
してください。

[ 戻る ]
Q32 『Ver4.00 → Ver5.00』の変更と祝日法改正(天皇誕生日)に関する注意
A32
2017/6/16 に 「天皇の退位等に関する皇室典範特例法」 が公布され、
その中で「天皇誕生日」の変更 ( 12/23 ⇒ 2/23 ) が盛り込まれています。

[ 2018年以前 : 12/23 , 2019年 : 天皇誕生日は無し , 2019年以降 : 2/23 ]

祝日関連機能の 「天皇誕生日」 対応は Ver 5.00 にてサポート します。

その他の注意点については『Q13』と同様です。

[ 戻る ]
Q33 kt関数を利用しているワークブックのリンク変更手順 ( xla 版 から xlam 版へ変更 )
A33
kt関数Addin.xla から kt関数Addin.xlam へアドインを差し替える際に、
既に作成されているアドイン式のリンクを変更する手順を説明します。

安全の為に、予め対象ワークブックのバックアップを行なってください。

(1) 白紙ブックで kt関数Addin.xla をアドイン解除する。
(2) エクセルを終了し、Library フォルダから kt関数Addin.xla を削除する。
(3) エクセル再起動後に、白紙ブックでアドイン登録ダイアログを表示し
     『kt関数Addin』をクリックしてアドインリストから削除する。
    ( 補 ) エクセルバージョンによっては不要です(自動で消えています)。
(4) エクセルを終了し、Library フォルダへ kt関数Addin.xlam をコピーする。
(5) 白紙ブックで kt関数Addin.xlam をアドイン登録する。

--- 「参照設定(VBE > ツール > 参照設定)」が無いブックの場合 ---
(6) kt関数を使っているブックを開く(リンクエラーは無視する)。
(7) [データ > リンクの編集]で kt関数Addin.xla のリストを選択し
    『リンク元の変更』をクリックする。
(8) 表示されるエクスプローラーで [ C:\…\Library\kt関数Addin.xlam ]
    を選択する。
(9) kt関数アドインのリンク式が変更されて、kt関数の結果が正しく処理されて
    いる事を確認した後に、当該ブックを保存する。

--- 「参照設定(VBE > ツール > 参照設定)」が有るブックの場合 ---
(10) kt関数を使っているブックを開く(リンクエラーは無視する)。
(11) VBE (開発タブ > Visual Basic) から [ツール > 参照設定] を開く。
(12) [レ] 参照不可:kt関数Addin.xla
      [  ] kt関数Addin  ( ← kt関数Addin.xlam )
      上記のようになっているので、参照不可の方のチェックを外し、xlam の方に
      チェックを入れて OKボタンをクリックする。 再度、参照設定を開くと、参照
      不可の方( xla )が消えて、xlam の方だけが残っている。
(13) (7) 〜 (9) の操作を行なう。
(14) 『リンクの編集』 を再び呼び出して、kt関数Addin.xlam のリンクだけに
      なっていればOK。
(15) kt関数Addin.xla と kt関数Addin.xlam の2つがリストに載っている場合は、
      置換 ( ホーム > 検索と選択 > 置換 ) を呼び出し、下記条件で「全て置換」を
      実行する。
            検索する文字列  :  \kt関数Addin.xla'
            置換後の文字列  :  \kt関数Addin.xlam'
            ( xlam を xla と誤認させない為に最後のアポストロフィ も含める事 )

(16) (6) 〜 (15) を全ての「kt関数を使っているブック」で繰り返す。

[ 戻る ]
Q34 『Ver 5.00 → Ver 5.10』 の変更と祝日法改正(東京五輪 特措法による祝日移動(2020年) 他) に関する注意
A34
2018/6/13 に 「体育の日の改名」 および
「東京五輪特措法による祝日移動(2020年)」 が成立しました (2020/1/1 施行)。

祝日関連機能での 上記の 改正対応は Ver 5.10 にてサポート します。

その他の注意点については『Q13』と同様です。

[ 戻る ]
Q35 kt関数Addin.xla/xlam を削除してもアドイン登録ダイアログのリストから消えない。
または、新バージョンに差し替えても旧バージョンのままでアップデートできない。
A35
以下のようなトラブルに出会った場合は、VirtualStore 内の Library フォルダ
kt関数Addin.xla/xlam が在るかを確認してください。在った場合は、そのアドイン
ブックを削除してください。
  (例)  C:\Users\USER NAME \AppData\Local\VirtualStore
                    \Program Files (x86)\Microsoft Office\Office16\Library

--- トラブル例 ---
    ・ kt関数Addin.xla/xlam を Library フォルダから削除しても、アドイン登録
      ダイアログの リスト から削除されない( リスト の kt関数Addin を選択しても、
      削除確認メッセーも表示されない)。
    ・ Library フォルダのkt関数Addin.xla/xlam を新バージョンに差し替えても、
      エクセルを起動すると旧バージョンのアドインが起動している(メニュー/Version
      情報の表示も旧バージョン)。

Windows Vista から、Library フォルダは UAC (ユーザーアカウント制御) 管理下の
フォルダとなっています。システム権限の無いユーザーアカウントのまま (UAC を解除
しないまま) で Library フォルダ内に ファイルを保存すると、仮想化フォルダ (Virtual
Store) へ飛ばされます。
以降、そのファイルはユーザー/各種アプリ からは正規の Library フォルダ内に在る
ように見えます(そのファイルの内容を書き換える操作をすると仮想化フォルダ内のファ
イルが更新されます)。
UAC を解除後に正規の Library フォルダに同名ファイルを新たに保存しても、アプリ
からは仮想化フォルダ内のファイルの方が優先して見えますので差し替えられていない
ようにみえます。


[ 戻る ]
Q36 『Ver 5.10 → Ver 5.20』 の変更と祝日法改正(即位関連休日) に関する注意
A36
2018/12/8 に 「即位の日 (2019/5/1) 」 および 「即位礼正殿の儀 (2019/10/22) 」
の臨時祝日法が成立しました。 5/1 の祝日化に伴い、祝日に挟まれる 4/30 および
5/2 も 「国民の休日」となります。

祝日関連機能での 上記の 改正対応は Ver 5.20 にてサポート します。

その他の注意点については『Q13』と同様です。

[ 戻る ]
Q37 新元号 [ 令和 ] に対応していますか?
A37
Ver 5.30 にて 新元号 [ 令和 ] に対応しました。
kt関数アドインが提供する関数/サブルーチン は、新元号「令和」対応になっていない
環境でも[日付] 引数に 「令和 日付文字列 (元年 表記を含む)」 を指定可能
です

また、Excel の TEXT/DATEVALUE や VBA の Format / CDate / DateValue / IsDate
の 代替関数として [ 令和 ] 対応日付変換関数 ktEraFormat / ktEraCDate / ktEraIsDate
が追加されました。

[ 戻る ]
Q38 『Ver 5.31 → Ver 5.40』 の変更と祝日法改正(東京五輪 特措法による祝日移動(2021年)) に関する注意
A38
2020/11/27 に「東京五輪特措法による祝日移動」 が成立しました (2021/1/1 施行)。

祝日関連機能での 上記の 改正対応は Ver 5.40 にてサポート します。

その他の注意点については『Q13』と同様です。

[ 戻る ]

HomeボタンIndexボタン


角田 桂一 Mail:addinbox@h4.dion.ne.jp CopyRight(C) 2001 Allrights Reserved.