2016年11月27日日曜日

エクセル 備忘録 16/11/27

システム関連情報を取得する関数

フルパス&(拡張子付き)エクセルファイル名&(該当セルのある)シート名
=CELL( "filename",
             $A$1
            )

エクセルファイルの存在するフルパス
=LEFT( CELL( "filename", $A$1 ),
             FIND( "[", CELL( "filename", $A$1 ) )-1
           )

拡張子なしのエクセルファイル名
=REPLACE( LEFT( CELL( "filename", $A$1 ), FIND( ".", CELL( "filename", $A$1 ) ) -1 ),
                     1,
                     FIND( "[", CELL( "filename", $A$1 ) ),
                  )
※第4引数(置き換え文字)は無しです
※エクセルファイル拡張子文字数が、かつては3文字固定だったが
    4文字の場合もあるので、ファイル名に関わる文字列操作は処理開始文字位置に注意が必要

2016年11月3日木曜日

Windows 7 選択されたタスク "{0}" が存在しません

タスクスケジューラを開いた時に
「選択されたタスク "{0}" が存在しません」エラーを表示されてしまい
タスクの編集ができなくなった。


システムドライブのプロパティーウインドウ中の[ツール]タブにある
[最適化する]をクリックするか
もしくは
スタートメニューの[アクセサリ]・[システムツール]にある[最適化]をクリックして
ディスクデフラグを起動する
 ↓
警告メッセージが表示される
「ディスク デフラグ ツール は他のプログラムを使ってスケジュールされました」
 ↓
[設定の削除]をクリックして、ディスクデフラグツール ウィンドウを表示させる
 ↓
 ↓
■適当なデフラグスケジュールを設定して、[閉じる]で終了する
もしくは
■このまま、何も設定せずに[閉じる]で終了させるだけでも
タスクスケジューラのエラーは解消されている。
 ↓
 ↓
タスクスケジューラを起動する
 ↓
エラーが表示されることなく、ウィンドウが開かれる


● ディスクデフラグツールにて設定したデフラグスケジュールは
タスクスケジューラのDefragエントリーにデフォルトタスクとして登録されている。
つまり
1つのスケジュール情報を、ディスクデフラグツールとタスクスケジューラ双方が
アクセスしていることになる。

●ここから推測になるが
このような関係にあるので、どちらか一方のツールでデフラグスケジュールを
変更した場合に、データの整合性が取れなった結果
かのエラーが表示されたのではないかと思われる。


●まとめると
タスクスケジューラのDefragエントリーに、もともと設定してある
デフラグスケジュールはカスタマイズしない。
そして
特定のイベントトリガでデフラグさせたいのなら
タスクライブラリ配下に新規タスクとして、スケジュール登録する。