2011年4月18日

Excelファイルが開かない ー 読み取れない内容が含まれています。このブックの内容を回復しますか?

Excelファイルを保存し、いったん閉じてから再度開くと次のエラーが表示された。
「<ファイル名>には読み取れない内容が含まれています。このブックの内容を回復しますか? ブックの発行元が信頼できる場合は、[はい]をクリックしてください。」

で、[はい]をクリックすると、またエラーが表示された。
「<ファイル名>にエラーが検出されましたが、次の修復を行うことによってファイルを開くことができました。修復を保持するにはこのファイルを保存してください。
ファイルへのダメージが深刻であり修復は不可能です。数式と値の回復を試みましたが、消失または破損したデータが含まれる可能性があります。」

シートにあったすべての数式がなくなりました。。。orz

いろいろ調べると、名前の定義の内容が一時ファイルを参照していたり、#REF!など参照先がわからない状態だった。定義自体も数多く手で削除するには手間なので、VBAで全削除。

Sub 名前定義削除()
Dim obj As Name
For Each obj In ActiveWorkbook.Names
obj .Delete
Next obj
End Sub

これでエラーは解消しました。


【確認環境】
Windows XP SP3
Office 2003 SP3

2011年4月1日

ある時刻に自動的にPCをシャットダウンする方法

シャットダウン忘れを防止するためにある時刻になったらPCを自動的にシャットダウンするタスクを設定します。
  1. [スタートメニュー]-[すべてのプログラム]-[アクセサリ]-[システムツール]から”タスク”を選択
  2. 右クリックして[新規]-[タスク]を選択
  3. シャットダウンする頻度や時刻を指定
  4. ”実行するファイル”欄に以下を入力
    c:\WINDOWS\system32\shutdown.exe -s
  5. 実行するアカウントのパスワードを入力


【確認環境】
Windows XP SP3

2011年3月24日

WOL (Wake On LAN)を試す

こちらの記事を参考にWOLを試しました。
http://www.atmarkit.co.jp/fwin2k/tutor/wakeonlan/wakeonlan_01.html

自分のPCのBIOS設定ではすでにWOLがenableでした。またデバイスマネージャのネットワークアダプタの設定も記事どおりになっていました。

MagicSendをダウンロードしてMACアドレスを登録し、早速Magic Packetを送信。するとPCが起動しました!
http://www.ex-group.jp/newpage/software00.html

これは便利かも。ただし、MagicSendが流すパケットはL2のブロードキャスト・フレームなので、同一セグメント内しか送信できない。セグメントを超えてくれるパケットを流せるソフトウエアであれば、こういう制限はないでしょう。


【確認環境】
Windows XP SP3

2011年3月12日

SharePointのリストで[データシートで編集]を選択するとエラー

以下の内容のエラーダイアログが出ます。

「Windows Sharepoint Services と互換性のあるデータシート コントロールがインストールされていません。
ブラウザによって ActiveX コントロールがサポートされていません。
ActiveX コントロールのサポートが無効に設定されています。」

対応策はレジストリの削除となります。
※レジストリの変更を行うため必ずバックアップをとってください。レジストリの変更は自己責任でおねがいします。不具合が起こっても責任は負いかねます。
  1. Internet Explorerを閉じる
  2. レジストリエディタで以下のフォルダを削除する
    Path: HKEY_LOCAL_MACHINE¥SOFTWARE¥Microsoft¥Internet Explorer¥ActiveX Compatibility
    Sub-Key: {65BCBEE4-7728-41A0-97BE-14E1CAE36AAE}



確認環境
Internet Explorer 8
Office2003

2011年2月23日

pstファイルをmbox(MH形式)に変換するツール libpst

libpstというのがある。Microsoft Outlookのpstファイルをmboxに変換するツール。
http://www.five-ten-sg.com/libpst/

インストール方法
以下から"libpst-0.6.49.tar.gz"をダウンロードし展開
http://www.five-ten-sg.com/libpst/packages/

付属のREADMEに従って、以下を順番に実行
    ./configure
    make
    make install

./configure実行時にpython-devがなく失敗。synapticパッケージ・マネージャーでpython-all-devをインストールした。


使い方
readpst -M -o <出力先ディレクトリ名> <.pstファイル名>
詳しくはreadpstを実行

確認環境
ubuntu 10.10

2011年2月17日

複数個の乱数を取り出す sample()

sample(配列,サイズ,replace=FALSE)

2011年2月15日

組み合わせ関数 choose()

choose(n, k)
n 個から k 個を取り出す場合の数