2008.07.10 Thursday

Excelのバグ

たまにはExcelネタを。それもVBAのバグネタです。
つい先日、私自身がこれにハマりました。

まず「前提」の1つめ。
Excel VBAではプロパティを省略することが許されています。
プロパティを省略すると、そのオブジェクトの"既定のプロパティ"が指定されたものとします。
たとえばセルに値を代入するとき、セルの値はValueプロパティですから、本来なら次のように書くのがセオリーです。

Range("A1").Value = "tanaka"

これを、プロパティを省略して、次のように書いてもOKです。

Range("A1") = "tanaka"

次に「前提」の2つめ。
VBAの変数にはバリアント型という型があります。
バリアント型にセル(Rangeオブジェクト)を格納すると、変数を介してセルを操作できます。
次のコードで確認してみましょう。

Sub Sample1()
  Dim c
  Set c = Range("A1")
  c.Font.ColorIndex = 3
End Sub


以上の「前提」から、次のコードは何も問題がないように思えます。
選択したセル範囲(Selection)の各セルに対して、セルの値(数値とします)を10倍します。

Sub Sample2()
  Dim c
  For Each c In Selection
    c = c * 10
  Next c
End Sub


ところがコレ、まったく機能しませんし、エラーも発生しません。
いったい、どうしたことでしょう。

あれこれと試した結果、回避策はわかったのですが、そもそも原因は何なのでしょう。
調べてみたら、Excelのバグでした。
詳しくは、次のサポート情報(機械翻訳)に書かれています。

■XL98: Value プロパティがバリアント種類の For Each ループに unchange しました。
http://support.microsoft.com/kb/191176/ja


Excel 97とExcel 2007で確認しましたが、確かにおかしいです。

回避策は次の2点です。

・セルを格納する変数は、バリアント型ではなくObject型やRange型を使う

Sub Sample3()
  Dim c As Range
  For Each c In Selection
    c = c * 10
  Next c
End Sub


・代入される側のプロパティを省略しない

Sub Sample4()
  Dim c
  For Each c In Selection
    c.Value = c * 10
  Next c
End Sub


どうせプロパティを省略しないのなら「c.Value = c.Value * 10」と書くべきでしょうけど。
また、Microsoftのサポート情報では「For Eachループ内で発生する」ように書かれていますが、次のようなコードでも同じバグが発生します。

Sub sample5()
  Dim c
  Set c = ActiveCell
  c = c * 10
End Sub


これは、遭遇する機会の多いバグだと思います。十分に注意してくださいな。
2008.07.01 Tuesday

えっちでよくないブラウザ

ちょっと今、新しいサイトを立ち上げようとしています。おおむねのデザインはできたのですが、慣れないCSSを駆使しているためか、ブラウザによってレイアウトが崩れることがわかりました。

まぁ、そっちは何とか直すしかないんですが、その前に、そもそも現在主流のブラウザは何なのかと。別に、少数派のブラウザを無視する気はありませんけど、ちょっと調べてみることにしました。半分は興味本位です。

Office TANAKAサイトの生ログからユーザーエージェント情報を集計してみました。もちろん、ユーザーエージェント情報は偽装が可能ですから、正確な集計だとは思っていません。あくまで目安です。さらに、Office TANAKAはExcelの情報サイトですから、どうしてもWindowsユーザーが多いでしょう。そうした特性もあると思います。ちなみに調査期間は2008/6/1〜2008/6/30で、ページのリクエストごとに集計しました。ユーザー(IP)ごとではありませんので、サイト内で多くのページを見るのに使われたブラウザは件数が多くなってます。

■ブラウザ別
ブラウザPV%
 IE 2,391,117 83.70%
 FireFox 321,559 11.20%
 Opera 29,858 1.10%
 Sleipnir 5,022 0.20%
 Other 104,369 3.80%




やはりIEが圧倒的に多いんですね。ヘッダのユーザーエージェントに「MS7.0」とか「MS6.0」などの文字が含まれているかどうかを判定しましたので、もしかするとIEエンジンを使っている他のブラウザもカウントされているかもしれません。正確ではないにしても、それほど非現実な結果ではないと思います。

で、そのIEは、どんなバージョンが使われているのでしょう。最新のIE7はどれくらい普及しているのでしょう。実は今回の集計の目的はこちらでした。結果は次の通り。

■Internet Explorerのバージョン
バージョンPV%
 IE7 628,992 22.00%
 IE6 1,745,254 61.10%
 IE5 16,356 0.60%
 IE4 515 0.00%




まだ主流はIE6のようです。IE7は四人に一人といったところでしょうか。IE4によるアクセスがあったのは意外でした。他にも、携帯電話からのアクセスもけっこうありました。これはこれで、今後携帯電話向けのサイトを作るとき参考にしようと思います。


ユーザーエージェント情報には、さまざまなブラウザ(だけではありませんが)の名称がありましたが、その中で気になったのが「えっちでよくないブラウザ」という名前のブラウザ。なんだこりゃ?誰か自作ブラウザによるイタズラかな・・・と思いましたが、その割にはけっこう複数のIPでアクセスされているます。気になったので調べてみたら「ぶら。」という名前のタブブラウザでした。

■タブブラウザ「ぶら。」配布所
http://www.geocities.jp/tabbrowser/index.html

詳しいことは上記のページを見ていただくとして。
試しにダウンロードして使ってみました。



ブラウザとして基本的な機能は充実しているし、動作は軽いし、他にもいろいろ便利な機能があるし。なによりユーザーエージェント情報を簡単に偽装することが可能です。MozillaやOperaはもちろん、DoCoMoなど携帯電話もOK。そして、選択リストの一番最後に「えっちでよくないブラウザ」と。なぜ「えっち」なのかは、あえてここでは書きません(^^;

世の中には、いろんなブラウザがあるんですね〜
2008.06.25 Wednesday

みゆき通り

テレビ番組を見ていたら「みゆき族」という話題が出て。
この意味を、若い芸能人が
香坂みゆきさんなど、みゆきという名前の女性のファンである男性の集団
的に答えてました。
もちろん間違っているし、もしかするとヤラセの回答なのかもしれませんが。

「みゆき族」は、私よりもう一世代上の時代に流行った言葉(現象)で、銀座のみゆき通りに集まる若者たちを指したはずです。当時は第一次アイビーブームで、VANの紙袋を小脇に抱える若者も多かった・・・と、何かで読んだ記憶があります。

と、そこまではテレビを見ながら考えていたのですが、では「みゆき族」「みゆき通り」の"みゆき"とは、誰のことなのだろう?と疑問に思いました。もちろん、香坂みゆきではないだろうし、間違っても井森美幸のはずはなく、あだち充原作の「みゆき」も関係はなさそうです。

悩んだときはWikipedia。さっそく検索してみると「みゆき族」「みゆき通り」ともに編集されていませんでした。それでは、と「みゆき通り 銀座」などでググってみると、やたらと店のページがヒットします。カフェとか、美容整形とか。WikipediaやGoogleで検索して、目指す情報に一発でたどり着けなかったのは珍しかったです。で、しかたないので(てゆーか、それが当然ですけど)、それらしい情報がありそうなページを順に読んでみました。そしたら、ようやく由来がわかりました。"みゆき"って、人の名前じゃなかったんですね。

「みゆき通り」は、そのむかし明治天皇が宮城から浜離宮や海軍兵学校などへ、御幸(みゆき:天皇がお出かけになること-三省堂国語辞典より-)されるときに通られた道なんだとか。なるほど、だからATOKで「みゆきどおり」を変換すると「御幸通り」となるんですね。そっか、女子の名前じゃなかったのか。へぇ〜

2008.06.22 Sunday

firefox 3

以前、評価記事を書いたりしましたので、かなり多くのブラウザを過去に触ってみました。で、結局いまはSleipnirを愛用しているのですが、先日firefoxの新しいバージョンが公開されたようで。描画の速度が速くなったなどの記事を読んで、試しにダウンロードしてみました。そしたら・・・


実はいま、Office TANAKAサイトのリニューアル作業を進めています。ちょっと新しいことも始めるので、それにあわせてデザインを一新しようと考えているわけで。

言うまでもなく、最近の主流はCSSであり、昔のようにtableタグを使ったデザインに関しては、いろいろな意見を耳にします。まぁ、私はWeb関係の専門家ではありませんから、ガリガリとtableタグを重ねたページを作ったところで、シロウトですから許してね…ってのが本音なんですが、いい機会ですからCSSについても勉強してみようかなと。自分のページをCSSで作ることで、少しは知識が増えるかなと、そんな思いでチャレンジしてみました。

かなり苦労しながら、数ヶ月かけて何とかデザインできて、完成までもう少しのところなんですが、これをfirefoxで見たらナント全滅・・・レイアウトが崩れるなんてもんじゃありません。Webページとしてあり得ない状態になってしまいました。

float関係の書き方が悪いのかな・・・なにせシロウトなんで、よくわかりません。頭にきて、いっそtableタグで書き直してやろうかな、なんてことも頭をよぎりましたが、他の人のページを見ると、けっこうfirefoxでもちゃんと表示されてます。むむう…悔しいです。もうちょっと調べて、何とか対応させてみましょう。って、公開日に間に合うんかな(^^;


自分の知らないことを学習すると「わからない」「理解できない」ことに遭遇します。日頃、ExcelやVBAを教える身として、学習者の気持ちを理解しようと努めてはいますが、自分がその気持ちを忘れてしまってはいけませんね。何かを調べて、さんざん迷って、遠回りをしたあげくに、ようやく理解できたりすると「なんで先にこれを説明してくれないんだろう」とか「どうしてこういう例を示してくれないんだろう」などと痛感します。自分が知っていることを教えていると、そういう感覚をつい忘れがちになります。「こう教えればわかるだろう」と勝手に判断したりします。いけませんね。教える者は、常に「どう教えるべきか」を模索すべきです。万人に対してベストな教え方なんてないのですから。

そういう意味で、新しいことを習得するのは勉強になります。
2008.06.20 Friday

甘いものは別腹

「甘いものは別腹」と、よく言われます。食事が終わって、十分に満腹であっても、デザートのケーキなどをペロリといけてしまうアレです。特に女性は、よくそういう話を聞きますね。別腹つったって、人間に胃はひとつしかないわけだし、物理的にありえないだろ。要するに気分的なことなんじゃねーの?と思っていましたが、まんざらそうでもないようです。

胃に食べ物が充満すると、血糖値の上昇などによって指令を受けた視床下部は、満腹中枢から「もうお腹いっぱい、もう食べられない」という信号を出します。この働きによって人間は過食から身を守ることができるわけです。

さて、ここでケーキなどの甘いものを見ると、脳内にはβ-エンドルフィンが出てきます。β-エンドルフィンは"脳内麻薬"とも呼ばれる神経伝達物質で、モルヒネの約6.5倍もの鎮痛作用があるそうです。またβ-エンドルフィンは、幸せな気分やウキウキした気分など、いわゆる多幸感をもたらす作用があり、マラソン中に気分が高揚する"ランナーズハイ"や、セックスの快感もβ-エンドルフィンが原因だと言われています。

β-エンドルフィンの増加はドーパミンの分泌を促します。ドーパミンは、運動調節やホルモン調節、意欲や学習などに関わる神経伝達物質です。ドーパミンはさらにオレキシンを分泌させます。オレキシンは脳内の摂食中枢に局在する物質で、摂食量を増加させる働きをします。その結果、脳は「もっと食べたい」「食べろ」という指令を発して、胃の動きを活発にするのです。胃は消化の活動を高め、食べ物を小腸に送り込み、胃の内部には新たなスペースが生まれます。そう、この新たなスペースこそが「別腹」なのです。

別腹のキッカケとなるβ-エンドルフィンは、他の味に比べて甘いものを見たときに多く分泌されるそうです。さらに、β-エンドルフィンは男性よりも女性の方が出やすいこともわかっています。ラットに砂糖水を好きなだけ飲ませるという実験では、メスはオスの約2倍もの量を飲んだそうです。世の女性がスイーツに目がないのは、β-エンドルフィンのせいだったんですね。同じ量のβ-エンドルフィンが分泌されたとき、女性の方がより感受性が高く、より感激して、より美味しいと感じます。これは、来るべき妊娠・出産に備えて皮下脂肪を蓄積しようとするためでしょう。

人間のカラダは、実によくできていますね。


ネタ元:NHK「解体新ショー」, Wikipedia
2008.06.17 Tuesday

高松―まるで「UDON」と同じだった件―

帰る日、朝8:30に集合して、地元の方の案内で「うどん巡礼」に行ってきました。といっても、飛行機の時間がありますので、残念ながら2軒だけ。

まず「がもううどん」に行きました。
高松駅から車で走ること・・・走ること、かなり。よく覚えていません。遠くに見えていた山々が、だいぶ近づいたあたりで、車はふいに小道へと曲がりました。常識的に考えて、普通自動車2台はすれ違いできないような小道です。しかも両側は水田。もちろんガードレールなどありません。曲がりくねった住宅地をズンズン進みます。まるで映画「UDON」そのものです。
で、ようやく到着した「がもううどん」。残念ながら第3月曜日は定休日でした。

定休日くらいで挫けていては、うどん巡礼などできません。
「残念、定休日か。じゃ、別のところに行こう」
と再び車を走らせて、着いたのが「彦江製麺所」。
製麺所です、製麺所。店じゃありません。これまた「UDON」でよく見た光景です。中に入って丼を取り、作業中のおばちゃんから玉をもらいます。冷たいダシと暖かいダシはお好みで。トッピングも勝手にどうぞで、奥の椅子に座って食します。間違いないです!



われわれが製麺所に入る前、あるいは食べている間、そして食べ終わって外に出たあとも、ひっきりなしに近所の人が自転車でやってきます。みなビニール袋を持参して、玉とダシを買っていきます。ちなみにテイクアウトの一玉は60円だそうです。

車の中で、いかに香川の人たちにとって「うどん」が日常的かをレクチャーされながら、次の店へと向かいました。2軒目は「小縣家」でした。
今度は製麺所ではなく、ちゃんとした店です。注文してすぐに出てきた大根をおろして待ちます。うどんにスダチを絞り、おろしたての大根を乗せ、ネギをたっぷりトッピングしてから特性醤油をかけます。これまた激ウマでした。



うどんの写真を撮らなかったのは、デジタルカメラが壊れてて携帯電話しか持っていなかったのと、ほかの人の写真で私が食べているとこのモデルをやっていたからです。せっかくですから記念として写真を撮りたい気持ちもありましたが、食欲に負けました。
2008.06.16 Monday

高松―眺めがハンパじゃない件―

広島の翌日は、高松へ移動です。

四国といえば、私は今まで徳島にしか行ったことがありませんでした。一太郎のヘルプを書くときにしばらく滞在(カンヅメともいう)しに行ったんです。もう何年も前のこと。だたし、知っている場所は徳島空港と、何とかいうホテルと、ジャストシステム本社だけ。あ、あとは「セルフうどん」の店。子供の頃から憧れていた、あの"湯切り"を自分でやれたのは超感動でした。

広島から新幹線で岡山へ出て、マリンライナーで瀬戸大橋を渡ります。これも初体験。



マイクロソフトの中国支店は、高松駅前のシンボルタワーにあります。21階です。高いです。窓からの眺めがハンパないです。感動です。



ちなみに入り口にはダルマが。



うどんを食って帰ります。
2008.06.15 Sunday

広島―戦争反対と強く感じた件―

Excelのセミナーをやって、打ち上げで飲んで、当然のようにお好み焼き屋に行って、なぜか環境問題から「マタギ」の話で盛り上がり、ホテルの部屋でダウンしました。知らないうちに眠っていて、気づいたら朝の5時。とりあえず風呂に入りました。


せっかく早起きしたのですから、朝の散歩に行きました。目的地は「原爆ドーム」。ホテルから歩いて15分くらいと、夕べのお好み焼き屋で聞きました。広島に来たら、ぜひ見たいと思ってました。





う〜む・・・何とも・・・言葉がありません。
2008.06.14 Saturday

広島―市電の乗り方に悩んだ件―

昨日は広島に行きました。初めての広島です。マイクロソフトの中国支店は、八丁堀という駅にあります。新幹線の広島駅から市電に乗って5〜6分です。



市電・・・な、懐かしい(^^;

私が子供の頃、まだ幼稚園くらいだったでしょうか。横浜市内にも市電が走っていました。よくそれに乗って、ザキまで行ったものです。ちなみに当時の田中家は、何かのイベントにはいつもザキの不二家に行ってました。私はもっぱらバナナホットケーキ。

んで、広島の市電です。この手の、初体験の交通機関では、いつ、いくら支払えばいいかのルールがわかりません。とりあえず市電乗り場に行ってみると、横に自動販売機が。これで切符を買うのかと思いきや、いわゆるプリペイド式の乗車カードでした。今日と明日の2回しか乗らないでしょうから、カードはいりません(まぁ、記念で買ってもよかったのですが)。迷っているうちに発車時間になり、とりあえず市電に乗り込みました。

おそらく均一料金らしいということは察しましたし、さらに「降りるときに支払う」ということも推測できました。にしても、出口には男性の車掌さんが見張っていますし、勝手のわからないビギナーが常連者に迷惑をかけてはいけません。下車駅に着くまで、みんながいくらを支払うのか、ずっと観察していました。

どうやら小銭を2枚入れているようです。ふむふむ、150円ぽいですね。では私も小銭を用意して・・・とポケットを探ると、50円玉がありません。100円玉は数枚あるんですが、10円玉も2枚程度しかないです。う〜む・・・お釣りをもらうにはどうしたらいいのだろう。てゆーか、お釣りをもらえるんだろうか。「お客さん、両替しといてくれんと、困るんじゃけんのお」とか怒られて、車内の人々から一斉に白い目で見られたら・・・「ったくぅ。両替しとけよなぁ、じゃけんのお」「あ〜あ、これだから初心者は、じゃけんのお」ひぇ〜ごめんなさいorz とか妄想しているうちに八丁堀に着いてしまいました。ほかの、降りる人たちに混じり、料金箱に100円玉を2枚放り込んで、ダッシュで降りました。ごめんなさい、ごめんなさい・・・


広島の市電に乗るときは、150円分の小銭を用意しておきましょう。
2008.06.12 Thursday

地方巡業

先日は、札幌でExcelセミナーをやってきました。
で、いよいよ今週末は広島と高松。
2日連続なので、割とヘヴィかも。
いえ、セミナーの内容ではなく荷物が。

広島ではお好み焼き、高松ではうどんと、
これはハズせない。

NPO Day地方版で各地を回ってきたわけですが、
これで一区切り。
夏からは、Office TANAKA主催で
「全国Excelキャラバン」
を計画しています。

も一回、札幌でチーズ・オムレット食べたいし、
今回縁のなかった、仙台や福岡にも行きたい。
ウマイもん食いたいしなぁ・・・

あと沖縄も!
久しぶりに泡盛飲みたいし、
ステーキの「サムズアンカーイン」ってまだあるのかな?
入り口の階段には、壁一面に訪れた人が名刺などを貼り付けてあったなぁ。
学生で、名刺を持っていなかった私は、自分の写真を貼ってきました。
沖縄に行ったら、後ろの予定を空けておいて、与論に寄ってこようかな。
茶花銀座も変わったろうな〜クレオバーガー、また食いたいなぁ。
サザンクロスは、今どうなってるんだろう。克郎さんや社長は元気かなぁ。
とりあえず有泉でケンポーだな。

あ〜南の島で、ノンビリしたい。
Calendar
      1
2345678
9101112131415
16171819202122
23242526272829
30      
<< April 2017 >>
Selected Entries
Categories
Archives
Recent Comment
Recent Trackback
Recommend
Recommend
Recommend
Recommend
Recommend
Links
Profile
Search this site.
Others
Mobile
qrcode
Powered by
30days Album
無料ブログ作成サービス JUGEM