わいえむねっと

Contents
Categories
Calendar
2026/11
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Monthly Archives
~2000/01
Recent Entries
RSS1.0
Templates
Information
Processed: 0.051 sec
Chashed: -
2010/03/19 Fri
三連休を前にまた体調を崩してしまったので会社のホワイトボードの自分の欄に

3/23 休

と書き殴ってオフィスの戸締りをして携帯の電源を切ってふらふら帰る。
2010/03/18 Thu
後頭神経痛は解消されたものの、半年くらい前に子会社の内輪モメに巻き込まれて引き取ったプロジェクトの仕様変更依頼がきてあたまいたい。 さぁ三日連続のお好み焼きを焼こう!と風呂上がりに流しの前に立った時点でタマゴを切らしていたことに気が付いて、帰り道になにか忘れているような気がしていたのはこれかぁぁぁ!?とひとしきりじたばた。
しかしそうすると夕飯はどうしよう、もう23時だしいいかーと思ったりもしてみたものの、結局着替えてタマゴだけ買ってくるのでした。

青海苔をかけすぎていただきます。
2010/03/17 Wed
10%くらいの精度しかなかったものをこの半日で90%くらいの精度までまで引き上げて、まさかこれだけ向上するとはーと自分以外に人のいないフロアでくねくねしてみたりしていましたが、そういえば昨年の今頃も2時間くらいかかっていた処理を一晩で数分で処理できるようにしてみたりとかしていたので改善というのは得てしてそういうものなのかもしれないな!と思ってみたりしたものの、どう考えてもそれは元がひどいだけだな。
2010/03/16 Tue
風邪は治ったものの引き続き頭が痛くてなんだえーと思っていたら、これあれですね。ここのところこぶさただったのですっかり忘れてましたけど、例によっての後頭神経痛じゃないのさ。 フロアが移転して自販機がなくなってしまってからコーヒーはもっぱらインスタントでしたが、なんとなく今日は缶コーヒーを。
つーか、なんとなくもなにも単に暑かったからだよ!
インスタントではホットで飲まざるを得ないので。

三寒四温とはいうけれど、そんなにころころと気温を変えられたら、また風邪をひいてしまいますですよ。
2010/03/15 Mon
頭痛が止まないのでとっとと帰ってひとっぷろ浴びて酒を一杯というか五、六杯ひっかけて布団にもぐってラジオをたれ流しながら貝ひもをかじりつつパフォーマンス調整とかそんな感じのことをだらだらと。
つーか、遅すぎるんだよ!バカ!
2010/03/14 Sun
熱は下がった気がする。 VBとC#の遅延バインディングの違いについてにゃんにゃん言っている人がいたので、

Visual Basic .NET による Office オートメーション サーバーでのバインディング
http://support.mi​crosoft.co​m/default.as​px?scid=kb;JA;304661

Visual C# .NET で Office オートメーション サーバーをバインドする方法
http://support.mi​crosoft.co​m/default.as​px?scid=kb;JA;302902

をぼけと眺めてみる。

Visual Basic .NET では、IDispatch::GetIDsOfNames メソッドを使用して、そのオブジェクトでサポートされているメソッドおよびプロパティを確認し、IDispatch::Invoke メソッドを使用して、それらのメソッドやプロパティを呼び出すことができます。

Visual C# では、IDispatch::GetIDsOfNames メソッドを使用して、そのオブジェクトでサポートされているメソッドおよびプロパティを確認し、IDispatch::Invoke メソッドを使用して、それらのメソッドやプロパティを呼び出すことができます。

書いてあることは変わらんなーと思いつつサンプルコードを見てみたら全然違ってて噴いた。
以下、サンプルコード抜粋。

Visual Basic .NET 事前バインディング
Dim objApp As Excel.Application
Dim objBooks As Excel.Workbooks

objApp = New Excel.Application()
objBooks = objApp.Workbooks

Visual Basic .NET 遅延バインディング
Dim objApp As Object
Dim objBooks As Object

objApp = CreateObject("Excel.Application")
objBooks = objApp.Workbooks

Visual C# .NET 事前バインディング
Excel.Application objApp;
Excel.Workbooks objBooks;

objApp = new Excel.Application();
objBooks = objApp.Workbooks;

Visual C# .NET 遅延バインディング
object objApp_Late;
object objBooks_Late;

Type objClassType; 
objClassType = Type.GetTypeFromProgID("Excel.Application"); 
objApp_Late = Activator.CreateInstance(objClassType);
objBooks_Late = objApp_Late.GetType().InvokeMember( "Workbooks", BindingFlags.GetProperty, null, objApp_Late, null );

ああ、これは確かに面倒だ。

ただやっぱり、

このような遅延バインディングには、事前バインディングでは避けられないバージョン依存関係を部分的に回避できるという利点があります。

が必要になる場面はあるわけで、さりとて

ただし、オートメーション コードの完全性をコンパイル時にチェックできなくなり、メソッドやプロパティの適切な呼び出しを支援する Intellisense 機能が提供されないという欠点もあります。

は嬉しくないわけで。
ままならない。
2010/03/13 Sat
少し大きめの皿が欲しいなと思っていたら
お気に入りの皿が真っ二つに割れたから
七月六日はサラダ記念日

※熱で朦朧としています 冷たいものが欲しいと冷凍庫からシャーベットというかシャーベット状の焼酎を取り出して飲んで余計に熱くなって寝る。

ホッピー - Wikipedia
http://ja.wikiped​ia.org/wiki/%E3%83%9B%​E3%83%83%E​3%83%94%E3​%83%BC
一部ではジョッキに入れた焼酎をシャーベット状に凍らせる店もある。
2010/03/12 Fri
熱っぽいけどとりあえず出社して、とりあえずバファリンを投与。 Excel.Application.Run でVBマクロを叩いていたコードをVBマクロなんか使う必要ないよ!なんだよこれ!と削除したら、Excel.Workbook.Close が終了しなくなってしまったので調べる。

(環境)
Microsoft Visual C# 2008
Microsoft Excel 10.0 Object Library

・Excel.Application.DisplayAlerts を true にしたところ
 クリップボードの警告ダイアログが表示された。
 ダイアログを操作すれば Excel.Workbook.Close が通る。
・ダイアログは表示させたくないので

プログラムでクリップボードの警告メッセージを無効にする方法
http://support.mi​crosoft.co​m/kb/287392/ja
方法 2 : CutCopyMode を終了する
Visual Basic for Applications マクロを使用してセルの切り取りまたはコピーを行う場合、ブックを閉じる行の直前に次の行を挿入します。
workbook.Application.CutCopyMode = False

 を参考に Excel.Workbook.Application.CutCopyMode を False にしようしたけど
 XlCutCopyMode の定義が

public enum XlCutCopyMode
{
    xlCopy = 1,
    xlCut = 2,
}

とかで入らない。なんでだ。

(参考)
XlCutCopyMode 列挙型 (Microsoft_Office_Interop_Excel)
http://msdn.micro​soft.com/ja-jp/library/microsoft.​office.int​erop.excel​.xlcutcopy​mode(office.11).aspx
メンバ名 説明
xlCopy コピー モード
xlCut 切り取りモード

_Application_CutCopyMode プロパティ (Microsoft_Office_Interop_Excel)
http://msdn.micro​soft.com/ja-jp/library/microsoft.​office.int​erop.excel​._applicat​ion.cutcop​ymode(office.11).aspx
XlCutCopyMode で使用できるのは、次に示す XlCutCopyMode 列挙型の定数のいずれかになります。
取得する値 説明
False 切り取りモードとコピー モードがいずれも選択されていない状態。
xlCopy コピー モード。
xlCut 切り取りモード。

・とりあえず xlCopy をセットしてみたところ警告ダイアログはでなくなった。
・xlCut でも同様。セッターでなんかやってるっぽい。
・と思ったら、Excelのプロセスが残るようになってしまっていた。
・と思ったら、それは Excel.Workbook.Application にアクセスしたせいで
 余計なオブジェクトが増えたせいだった。
・CutCopyMode のセットを Excel.Application に対して行うように修正して解決。
・COM オブジェクトの操作はいろいろめんどくさいねという話。

状況は解決したけれど、そもそも Excel.Application.Run を叩いていたときはなんで平気だったのさともうちょっと調べてみる。

・Excel.Application.Run で叩いているVBマクロを空にすると終了しなくなる。
・徐々に削ってみたころ、Selection.AutoFilter を削ったところで終了しなくなった。
・逆に Selection.AutoFilter だけの場合は問題なし。
・と思ったら、AutoFilter のかかり具合によって挙動が違う。
・ただ、正常に終了する状態でも Excel.Application.DisplayAlerts を true にすると
 クリップボードの警告はでる。

AutoFilter がかかっている場合はクリップボードの警告は関係なく、AutoFilter がかかっていない場合はクリップボードの警告を抑止する必要があるのはなんでだ。なにか副作用でもあるのか。
根本原因が他のところにあるんじゃないかという気がしてならないけれど、風邪で朦朧としていて検証コードを書く気力がないのでとりあえずここまで。もげる。
2010/03/11 Thu
花粉症の諸症状は風邪をひくとアレルギー反応起こしてる場合じゃねぇということになって治まったりしますが、風邪の諸症状は花粉症のそれとさして変わらるわけでもなし結局ぐんにょりすることには変わりがあるわけでもなく、しかし今の状態はなんというかこう重度の花粉症の症状と風邪の引き始めの症状がうまいこと両立したようなそんなような状態であり、ようするに死にそう。
2010/03/10 Wed
おきゃくさんのところにうかがって、
こんなんでどうすかとデモをして、
そんなんでいんじゃねと了承を得て、
あとこういうのできる?と追加要望だされて、
できはするけど!と苦笑いして、
仕様を精査して、
仕様を精査して、
お茶を飲む。 冷蔵庫にある余りものにひき肉を追加したらおからハンバーグになるんじゃね?という気がしたので、ひき肉を買ってきた。


なった!

おから 250g
鶏ひき肉 150g
たまねぎ 1/2
にんじん 1/2
タマゴ 1

これで写真のサイズが6個。
もうれつにくずれやすいので、フライパンで焼くのは面倒すぎる。次はオーブンだな。
紫蘇とおろしぽん酢でいただきました。

81 名前:名無しさん@お腹いっぱい。 sage ▽3件 投稿日:2007/11/22(木) 22:03:24 ID:ZK6JzptD 2回目
おからハンバーグ
生おから2~3(お好みで):鶏ムネ肉1(鶏挽き肉でもOK)
卵
玉ねぎとニンジンのみじん切りかすり下ろしたの
鶏ムネ肉は一度茹でてほぐして細かくしておく
上の具材をボールに入れて塩、胡椒して混ぜて小さな薄いハンバーグの形にしたら、油をしかないフライパンで両面軽く焦げ目が付くぐらい焼いたらできあがり
冷めたらラップにくるんで冷凍保存。タレはウスターソースでもケチャップでも辛子醤油でもポン酢でも好みの味付けで、たっぷり付けるとウマい
豆腐やネギを入れたり、具材は好みや余りもので使用方法も味噌汁に入れたり色々ご自由に