恥晒し/一覧

カスがググったら、こうなった…的な。
カテゴリ
ググルヒト
恥晒し/一覧 (10)



2018年1月
 
19 20
21 22 23 24 25 26 27
28 29 30 31      

新着エントリ
Outlook Express 6 でエラー 0x800c0133 (6/6)
EXCEL 自Bookを複製するマクロ (4/19)
EXCEL 勝手にセルの色が塗られる (3/13)
SQL Serverからのメッセージが消えない (12/3)
日本語変換が思い通りにいかない (4/23)
VB コンソールへの文字列復帰 (10/28)
タスクからのバッチファイル(*.BAT)実行結果が0x4 (10/5)
VB 標準モジュールが開かない (9/29)
EeePcの無線LANがつながらない (9/28)
EXCELエクセルVBAでエラー400 (9/23)

新着トラックバック/コメント


アーカイブ
2010年 (5)
9月 (3)
10月 (2)
2011年 (2)
4月 (1)
12月 (1)
2012年 (3)
3月 (1)
4月 (1)
6月 (1)


アクセスカウンタ
今日:26
昨日:33
累計:105,343


RSS/Powered by 「のブログ

[PR]



2012年06月06日(Wed)▲ページの先頭へ
Outlook Express 6 でエラー 0x800c0133

Q:Outlook Express 6 でメールが受信できませぬ。

A:メールサーバー停まってんじゃね!?

Q:でも隣の人は受信できてるよ。
  それに、送信は出来てるからメールサーバーが停まってる
  …ってことは無いんじゃねぇw

A:何が「ぇw」だ!!!!
  送信できるんだったら、最初から言え!!

  そんなもん、お前のメーラーソフトが悪い!
  Outlookを再インストールしろ!

  以上っ!

Q:0x800c0133って、エラーメッセージが出るんだよぉ…

A:それを先に言え!

Q:うむ、ごめんなさぃ… m(_ _)m
  で、対処方法はあるの?

A:だから再インストールしろって言ってんだろ!
  そしたら直る!

Q:結局、それかよ!!
  再インストール以外で何とかならんのぉ?

A:方法はある!
  新しいパソコン買え!それが一番良い!

  嫌なら自分で調べろ!

Q:そんなァ…

=====================

...ということで自分で調べた結果。


Outlook Express 6 の場合
一つのメールフォルダあたりの格納上限が2GBらしいな。

そういや、2GBって言えば
MS-ACCESSのMDBでも似たような制限あったな〜

…というのは余談だな。

つまりはOutlookの受信フォルダ内に溜まってるメールが
2GBを超えたってことだな。

で、対処方法としては何てことは無い。

新しいメールフォルダを作成して、
受信フォルダに溜まってるメールをそっちに移していけばいいだけなのだ。

簡単なことだったw






ま、一応、これでも受信できるようになるので解決として良いのだが…





せっかく調べたんでもうちょっと補足。



メール移動しただけで済まぬのがOutlook Express 6!のアレなところ。




いやらしいことに、受信フォルダのメールは移動しても
一度膨らんだ受信フォルダのサイズが小さくなるワケではないのだ。




せっかくだから、受信フォルダ自体を小さくするところまでやってみる。




まず、Cドライブで「受信フォルダ.dbx」を検索。
Outlookの受信フォルダっぽいのが見つかるはず。
(たぶん2GBを超えているのがあるはず)


そしたら、そこのフォルダにある「受信フォルダ.dbx」を
「受信フォルダ.bak」とかに変名しておく。

 (ちなみに、このときOutlook は終了しておくこと、
  終了しないと変名できないので。)


で、Outlook Express 6を改めて起動する。

これで終わり。



もう一回、「受信フォルダ.dbx」を検索してみると
ファイルサイズが小さくなってるのが分かるハズだ。

てか、新しい受信フォルダが再生されるのだ。



ちなみに、だ、


この新しい「受信フォルダ.dbx」は
古い情報を引き継がないので注意が必要だ。


つまり元の受信フォルダにメールが残っていても
新しくできた受信フォルダは空の状態なワケだ。




なので
必要なメールは、別のフォルダにでも入れておこう。












ところで・・・


冒頭でA氏が「新しいパソコン買え」と言っていたが
それはもっともだと思われますし、良策かもしれませんね。

あたらしいOutllokでは上限値も変わってるらしい。
こんな簡単に受信フォルダがいっぱいになることも無いだろう。

てか、上限とかイラネ…って話しなんだけど
いつまでも古いソフトを使ってるのも考えモノだな

・・・と最近思うようになってきた。


MS-Office2000 とか VB6 とか...
使えば使えるけど、もう10年以上前の産物なワケだしな。

新しいモノを取り入れる勇気も必要なのだ。




































2012年04月19日(Thu)▲ページの先頭へ
EXCEL 自Bookを複製するマクロ

Q:分からん。

A:そーだねー、じゃーねー♪ (゚o゚)ノシ

Q:えっ、教えてくれよ

A:何を?だ!! 必要な情報だけ発信しろ!!
  さもなくば帰れ!!

  じゃーねー♪ (゚o゚)ノシ

Q:すみません、ちゃんとお伝えします。

  使用中のEXCELブックを保存した際に
  別の場所にあるEXCELブックの内容も同時に更新したいのです。
  どうしたら良いかな?

A:何てことはない、更新したいEXCEL側に計算式を入れたら?
  それで良いではないか?良いではないか?
  どーでもイイことですが、2回言ってみました。

  こんな感じだな、基本中の基本だが…

   =[参照先EXCEL]'参照先シート'!参照先セル

   例) =[WKBOOK]WKSeet!A5 みたいな!?

Q:参照するシート数が10枚以上、参照するセルも5000ヶ所以上ある。
  そんな計算式組み込んだシート作れないし
  誤ってリンク切れとか起こしたら、メンテナンス面倒だし。
  だからマクロで何とかならないか?と試みたわけです。

A:うむ。
  マクロを使おうと考えたところは評価するぞよ。
  で、どんなマクロだ?

Q:編集中のBOOKに保存がかかったタイミングで更新先のEXCELにコピーする。
  簡単に書くと…
----------------------------------------------
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
ActiveWorkbook.SaveAs Filename:=更新するEXCELの保存先
End Sub
----------------------------------------------
  こんな感じですね。
  ThisWorkBookでSaveが発動されたタイミングで
  別の場所(更新するEXCELの保存先)に上書き保存する。

A:で、どうなった?

Q:更新先のEXCELは作成されるんですが
  原本のEXCELが更新されなくなってしまいました。
  仕方ないので、ThisWorkBook.Save を終わりに付けてみたら
  とりあえず保存はされたんですが...EXCELが異常終了します。

A:当然だ。
  こりゃ、EXCELが壊れるぞよ

Q:どうして異常終了するのですか?

A:秘密だ。

Q:なぜ?

A:ところで、じゃーねー♪ (゚o゚)ノシ

Q:逃げるな!

A:ヒント
  ・パスが変わる。
  ・新たなEXCELが作成される。
  ・マクロは Workbook_BeforeSave のタイミングで実行される。

  これで分からなければ帰れ、じゃーねー♪ (゚o゚)ノシ


=====================

...ということで自分で調べた結果。

結局どういうことか分からんかった。
(理由は改めて後で聞いてみるか...)


ダメじゃん...

今回は回答見つからず orz





[後日の補記]
  上述のマクロでは複製されたEXCEL(別の場所にあるEXCEL)の中にも
  同じマクロが出来てしまうので非常に都合が悪い。
  また異常終了の起因にもなってるっぽい。
  複製されたEXCEL側には、マクロも入らない形にしたいのであるが…




[後日の補記 その2]
  こんなんで、どうだろうか?
----------------------------------------------
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Sheets.Copy
ActiveWorkbook.SaveAs Filename:=更新するEXCELの保存先
ActiveWorkbook.Close
End Sub
----------------------------------------------
  編集元ブック内の全シートを別ブックにコピーして
  コピーされたブックに名前を付けて保存する。

  ※コピーの際、画面が多少うるさい動きをしてしまうのだが
   マクロを含まない形でのコピーは実現できた。
   しかし、「更新するEXCELの保存先」に指定するEXCEL名は
   編集元ブックと同じ名前を指定できないのだ。
   ま、それは Close後に変名すれば解決できる話だな。

  ※あと、この方法は標準モジュールは引き継がれないが
   自シートにマクロがあった場合、残ってしまうな。

  もっと簡単・簡素に実現する方法は無いだろうか…














2012年03月13日(Tue)▲ページの先頭へ
EXCEL 勝手にセルの色が塗られる

Q:エクセル壊れたし。

A:壊れてねーし。

Q:セルの色が勝手に塗られちゃうんだよ!
  ほら、こんな感じで…


  ここでセル位置[G2]に入力すると…



  ほら、勝手に色が付くし。
  壊れたし。

A:勝手にセルの色が付くのは仕様だし。
  壊れてねーし。  

Q:そんな仕様、聞いたことねーし!

A:知らないのはお前が悪い!
  ボケが!
  帰れ!
  そして、寝てろ!
  そして、夢でも見てろ!
  そして、夢で解決方法を占え!

Q:何でそうなる… orz


=====================

...ということで自分で調べた結果。




こういう動作を勝手にやってくれる機能が
エクセルには搭載されているらしい。

「ツール」→「オプション」→「編集」タブと開いて



上記のように
「リスト形式および数式を拡張する」…のチェックを外す。



で、先ほどと同様にセル位置[G2]に入力すると…




おぉ!
勝手に色が付く現象が回避された。





ちなみに、何でこんな機能あるの?

ヘルプを見てみると



…ということらしい。





いらんな。




少なくとも俺は使わない...














[後日の補記]
  俺は使わん!とは言ったものの
  実はこの機能、普段の操作で知らぬ間に使ってるっぽいな...

  機能を外した途端、入力のペースがどこかいつもと違う!?
  何が違うかの説明は省略するが、よほど困るようでなければ
  無理にこの機能は外さない方が良さそうだ。













2011年12月03日(Sat)▲ページの先頭へ
SQL Serverからのメッセージが消えない

Q:朝、パソコン起動したら変なメッセージが出たんですけど…
  何度OKボタンを押しても同じエラーが出て、消えないいんです。

A:「変なメッセージ」では分からん!
  明確に述べよ!一字一句間違わずに述べよ!

Q:「SQL Server サービス マネージャ
   指定したサーバー名が無効です。」ってメッセージが…




A:なにっ! ちゃんと書いてあるだろ!
  指定したサーバーが無効なんだよ!
  日本語、読めないのか? アァゴラァ!?

Q:怒るなよぉ
  一字一句間違えるなって言うから読んだだけなのに…

A:お前が SQL Serverに関わる設定をいじったんだろ!

Q:何もしてないし。
  昨日の帰りまで、ちゃんと使えてたし。

A:じゃ、サーバー側のSQLServerの設定をお前が変えた!

Q:えぇぇ...
  だって、このパソコンはネットにつながってないですし、
  そもそも、私はサーバーなんて触ってません。

A:じゃぁ、お前が悪い!
  お前が何かしたからエラーが出る、お前が悪い!

Q:だから、何もしてないですって。
  ただ、いつも通りパソコンのスイッチ入れただけだもん…

A:いや、お前が悪い!
  スイッチ入れただけでは、こんなエラーは出ない!
  文句あるなら、自分で調べろ!

  絶対にお前が悪い!

=====================

...ということで自分で調べた結果。



とりあえず、いろいろとググってみたが
それっぽい回答が見つからない。


冒頭のやり取りで、回答者が言っているように
SQL Serverに関わる部分をいじってないか?的な回答しか見つからず、
根本的な解決には至っていないものが多い。






で、仕方ないので自分で調べてみたのだが...







あぁぁ...

本当に私が悪かった(自分で原因を作った)かもしれないことが判明。



先ずは「SQL Server サービス マネージャ」って何なのか?

まず画面の右下タスクトレイを見てみると、こんなアイコンがある。



これが「SQL Server サービス マネージャ」だな。


で「指定したサーバー名が無効です。」ってことは、
ここで指定されているサーバー名が正しくないってことだ。

さっそく、サービスマネージャを開いてみると…



見ての通り、サーバー欄が何も入ってない。
これがエラーメッセージの原因であることが分かった。

ここで、サーバー欄右横のプルダウンメニューから
対象となるサーバーを選択し、×ボタンを押して画面を閉じると
このエラーは出なくなることが判明した。

※選択するサーバー名は、システム管理者に確認。





…で、だ。

そもそも、何でここが空白になるか?ということが問題の発端だ。

冒頭のやり取りで、回答者が答えている通り
「お前が何かやった」というのが、恐らく正解なのだろう。


でも、自分は何もやってない!






...と思っていたのが落とし穴だった。


今朝、会社に出社してからパソコンを起動し、
このエラーを確認するまでの出来事を細かく振り返ってみる…
------------------------------------------------------
 @ 出社して自席の机上を拭き掃除

 A パソコンの電源を入れる

 B 机の横に置いてあった書棚にぶつかった

 C コーヒーを入れた(いつもは緑茶だけど)

 D トイレに行った

 E 自席に戻った

 F 書棚の本が床に落ちていたことを確認した

 G 今回のエラーが出ていることを確認した
------------------------------------------------------
ざっと、こんな感じ。

実はエラーの起因になった出来事が@〜Fの中にありました!


それは・・・「C」

いつもは緑茶を飲んでるのに、この日に限って
コーヒー(しかもミルクたっぷり)を入れてしまったのだ!






...というのは関係ない。

まともに書くと、恐らくBで書棚にぶつかった際
書棚の中の本が落ちて、キーボードの上に落下したと思われる。

そして、その落下した位置が[SPACE][DEL][BS]上だったと考えられる。



...これだけで、サービス マネージャのエラーが起きるのだろうか?



答えは「起きる」



100%では無いが、再現性があることが判明した。

試しに、パソコンを再起動して実験してみる。


Windowsが起動されている最中に[DEL]キーをポチポチポチ…ッっと
何度か押してみる。

すると、起動が終わった頃に...


エラーが出た。



ここからは推測なのだが...


恐らくWindows起動中、画面には見えていないが
「SQL Server サービス マネージャ」が、どこかで動いており
かつ、キーボードの入力を受け付ける状態になっているのであろう。


つまり、[DEL]キーを押したことにより
本来「SQL Server サービス マネージャ」に出ているはずの
サーバー名の欄が消去されてしまい、そのままの状態で
SQL Serverのサービスが起動されてしまったのだろうね。


その結果、再現テストでもやはりこうなった。









結論として「何もやってない」というのは、
確かに「自分では何もやってない」わけなんだけど、
自分の気づかないところで「何かが起きている」のだ。




「何もしてないのに!」って言う前に
「何か起きてないか?」を考えてみるようにしようと思う。












2011年04月23日(Sat)▲ページの先頭へ
日本語変換が思い通りにいかない

Q:今更なんだけど、
  IMEの日本語変換があまりにも「アレ」なんだが…

A:じゃ、他の変換使えば?ATOKとかOAKとか?

Q:ATOKは、まぁ妥当だよな。
  でもなぁ… むかしATOKを使ってたんだが
  EXCELのショートカットキーを多用するオイラにとって
  ATOKって、何だか相性が悪かった思い出でいっぱいなんだが…

A:なにっ!俺に言うな!
  文句があるなら、JUSTに言え、そしてIMEを使い続けろ!

Q:ま、確かにそうだな…
  それよりも、OAKってまだあるのか?
  富士通?OASYSに付いてたヤツだっけ?

A:それも知らん!
  自分でググれ!、バイドゥでググれ!

Q:すみません、その通りですね。

A:親指シフトキーボードが、まだ存在するのかも
  ついでに調べろ!


=====================

...ということで自分で調べた結果。


OAKはV8まで存在していたことが分かった。
今はJapanistって製品に変わってるのかな!?

そして親指シフトキーボードも、まだ在るみたいだね。
ということが判明したのだが...


あ、いま調べたいのは、そんなことじゃない。
IMEの日本語入力を何とかしたかったのだ。

結局のところ、ATOKにしてもJapanistにしても有償なんだな。
それがネック。

...と思っていたところに「Google日本語入力」の文字を発見。


以前から気にはなっていたが、なかなか使用に踏み切れなかった。
やはり「アレ」とは言え、使い慣れたIME。

オイラも若くない。
新しいモノには、なかなか手が出ないのが現実。


でも、さすがに今回は諦めて使用を試みることに。


で、使ってみた感触としては「まぁ、いいね」
変換精度、学習精度、候補表示いずれをとっても、IMEより良い。
EXCELのショートカットキー使用時の動作も問題ない。


しかし、3点だけ不満が...

・英数字や記号文字が、
 無変換キーの2回押しでハンカク文字にできない。


・文字の再変換ができない。
   ※一度変換した文字を選択し、
      その上で[変換]ボタンを押すと出てくる この↓画面



・キーボード操作で単語登録の画面が呼び出せない。
   ※[Ctrl]+[変換]で出てくる この↓画面




オイラのわがままかもしれんが...
 「とにかく手を動かす範囲を小さくしたい」
 「その少ない範囲で、すべての入力を済ませたい」
 「できればマウスまで手を伸ばしたくない、
           入力作業のリズムが崩れるから」
 「文字の入力は出来るだけ少ないキー操作で行ないたい」
 「...なので、単語登録は頻繁に行なう必要がある」

マウス操作よりもキーボード操作の方が圧倒的に多い作業を
している人には分かって頂けると思う、この気持ち。


しかし、自分が作業を行なう上での変換効率は、圧倒的にIMEより良い。
それは間違いない。



なので、今日からGoogle日本語入力を使ってみる。




 







2010年10月28日(Thu)▲ページの先頭へ
VB コンソールへの文字列復帰

Q:コマンドプロンプト(コンソール)から
  VB6のEXEを実行して、その結果を
  コマンドプロンプト(コンソール)上に返したい。

A:VB6の標準機能では
  コマンドプロンプトへの出力はできません。

Q:でも、何とかしたいんだYo!!


=====================

...ということで自分で調べた結果。



何てことは無い。
ただ「簡単には出来ねーよ」というだけじゃないか!
Win32Apiを使えば出来そうじゃね!?

この辺り↓のAPIをググルと事例もいっぱい出てくるし。

・AllocConsole
・FreeConsole
・WriteConsole
・ReadConsole




で、作成したのが大雑把にまとめると、こんな感じのソース。

 → Call WriteConsole(Hnd,"★表示したい文字列★",文字長)

    (かなり大雑把だが...)




さっそくコンパイル。



ぉ、一発で通った。 俺、すごい。




実行してみる
┌───
│C:\>TEST.exe

│C:\>

└───


  ・・・


  何も起きない。


  ・・・


  何も出ない。







出ないじゃん!何で!












仕方ない、またググる。



どうやらリンカの「SUBSYSTEM」オプションを
「console」にしなければならないらしい。





・・・って?

リンカって何? SUBSYSTEMオプションって何?




どこを、どう変えればいいんだ?


VBエディタのプロパティを見たが、そんなの無いし

EXEを実行するときに、何か付ければイイのか?

┌───
│C:\>TEST.exe /SUBSYSTEM=console

│C:\>

└───

何も起きない...


ま、そうだろうな...













仕事の合間を見つつ、調べ続けること約6時間...



なんだろうなぁ


実行ファイル作成時のオプションをいじってみたり...


プロジェクトのプロパティをいじってみたり...


試行錯誤するも結局分からないまま。





途方に暮れて、訳もなくVBがインストールされている
フォルダなどを眺めてみる...


ぉ、VBフォルダの中に「LINK.EXE」というのを発見。



リンク? リンカ?


これ... 何だ?







ちょっと実験で、コマンドを発行  link /?



┌─────────────────────────────────
│C:\>link /?

│Microsoft (R) Incremental Linker Version 6.00.8168
│Copyright (C) Microsoft Corp 1992-1998. All rights reserved.

│usage: LINK [options] [files] [@commandfile]

│ options:

│ /ALIGN:#
│ /BASE:{address|@filename,key}
│ /COMMENT:comment
│ /DEBUG
│ /DEBUGTYPE:{CV|COFF}
│ /DEF:filename
│ /DEFAULTLIB:library
│ /DELAY:{NOBIND|UNLOAD}
│ /DELAYLOAD:dll
│ /DLL
│ /DRIVER[:{UPONLY|WDM}]
│ /ENTRY:symbol
│ /EXETYPE:DYNAMIC
│ /EXPORT:symbol
│ /FIXED[:NO]
│ /FORCE[:{MULTIPLE|UNRESOLVED}]
│ /GPSIZE:#
│ /HEAP:reserve[,commit]
│ /IMPLIB:filename
│ /INCLUDE:symbol
│ /INCREMENTAL:{YES|NO}
│ /LARGEADDRESSAWARE[:NO]
│ /LIBPATH:dir
│ /LINK50COMPAT
│ /MACHINE:{ALPHA|ARM|IX86|MIPS|MIPS16|MIPSR41XX|PPC|SH3|SH4}
│ /MAP[:filename]
│ /MAPINFO:{EXPORTS|FIXUPS|LINES}
│ /MERGE:from=to
│ /NODEFAULTLIB[:library]
│ /NOENTRY
│ /NOLOGO
│ /OPT:{ICF[,iterations]|NOICF|NOREF|NOWIN98|REF|WIN98}
│ /ORDER:@filename
│ /OUT:filename
│ /PDB:{filename|NONE}
│ /PDBTYPE:{CON[SOLIDATE]|SEPT[YPES]}
│ /PROFILE
│ /RELEASE
│ /SECTION:name,[E][R][W][S][D][K][L][P][X]
│ /STACK:reserve[,commit]
│ /STUB:filename
│ /SUBSYSTEM:{NATIVE|WINDOWS|CONSOLE|WINDOWSCE|POSIX}[,#[.##]]
│ /SWAPRUN:{CD|NET}
│ /VERBOSE[:LIB]
│ /VERSION:#[.#]
│ /VXD
│ /WARN[:warninglevel]
│ /WINDOWSCE:{CONVERT|EMULATION}
│ /WS:AGGRESSIVE

└─────────────────────────────────



ぉぉ、それっぽいのあるじゃん!

「/SUBSYSTEM:{NATIVE|WINDOWS|CONSOLE|WINDOWSCE|POSIX}[,#[.##]]」

これ、これ!っぽい。



リンカってのは、コンパイラみたいなものなのか?

ようは、コンパイラみたいなのを作らなきゃならんのか?





もう一度ググる

キーワードは「VB LINK 使用方法 SUBSYSTEM:CONSOLE」




あった!! 発見!



リンカのオプション変更って
作成したEXEファイルに対して発行するコマンド?なのね、、、

 → Link /edit /subsystem:console C:\TEST.EXE




EXEを生成する時点で、何か変更しなければならないのかと思っていた。










クソっ! もうちょっと早く気付くことが出来れば...

ここまで到達するのに8時間くらい掛かった...


俺、センスない。







ま、それはイイ。



改めて実行してみる
┌───
│C:\>TEST.exe
│★表示したい文字列★

│C:\>

└───






ぬぉ。 やっと出たYo!!












近くに聞ける人がいたら、すぐ解決してたんだろうな。

くっ!



















ところで、今思うと・・・
LINK.EXEを発見した時点で、俺はなぜ「/?」を打ち込んだのだろう?

偶然とは言え、このアクションが無ければ
もっと時間が掛かったかもしれないな

そこだけが救いだった





つかれた










2010年10月05日(Tue)▲ページの先頭へ
タスクからのバッチファイル(*.BAT)実行結果が0x4

Q:タスクからバッチファイルを実行したが動かない。

A:どんなバッチを動かそうとしたんだ?
  詳細が分からないと答えようも無いだろう!

Q:フォルダをコピーしようとしただけだよ!
  実行結果:0x4 って何だ?


=====================

...ということで自分で調べた結果。



やりたいことは単純。

ローカルディスク(C:)に存在するフォルダ「DUMMY」の内容を
ネットワークドライブ(Z:)にコピーしたい。

作成したバッチファイルは、こんな感じ。





...と、書いていて思い出した。




ネットワーク上のフォルダを参照させる場合は「何か」必要だったはず...





「何か」とは何か?






思い出せない。





ググる










発見、「net use」だ。

しばらくバッチファイルなんて作ってなかったから忘れていた。






改めてバッチファイルを修正してみる。



ネットワーク上のサーバ(REMOTE_SERVER)で共有化されている
「COMMON」フォルダを Zドライブとして割り当てる。

その後、Zドライブにコピーする。    .....と。








実行結果は... 案の定、解決。

無事に実行された。
















それにしても、エラーコード:0x4 だけでは詳細は分からない...





 






2010年09月29日(Wed)▲ページの先頭へ
VB 標準モジュールが開かない

Q:VB6の標準モジュールを読み込めません。

A:読み込めません…じゃ分からない。
  他にも何かメッセージ、出てるだろ!

Q:読み込めないんだよぉ!!


=====================

...ということで自分で調べたのだが...


分からない。



通常、以下のようなモジュールをダブルクリックすると
VBのエディタがサクっと開くはずなんだけど...






やっぱり開かない。








ちなみに、モジュールの中身はこんな感じ↓
┌─┬───────────────────────────────────────────
│01│Attribute VB_Name = "ModuleCommon"
│02│Option Explicit
│03│'〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓
│04│' Common Module
│05│'〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓
│06│Public Function WaitTimer(WTime As Single)
│07│ Dim sv As Single
│08│ sv = Timer
│09│ Do Until Timer > sv + WTime
│10│ DoEvents
│11│ Loop
│12│End Sub
└─┴───────────────────────────────────────────







何が悪い?







1行づつ・1文字づつ検証したところ・・・
┌─┬───────────────────────────────────────────
│01│Attribute VB_Name = "ModuleCommon"
│02│Option Explicit
│03│'〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓
│04│' Common Module
│05│'〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓〓
│06│Public Function WaitTimer(WTime As Single)
│07│ Dim sv As Single
│08│ sv = Timer
│09│ Do Until Timer > sv + WTime
│10│ DoEvents
│11│ Loop
│12│End Sub
└─┴───────────────────────────────────────────



これだと開けた。







違いは、何?






3行目だ






コメント行の「〓」の数が40個か、36個か? それだけ。







いや、そんな理由な訳がない。






何かコーディング上の規約みたいなモノがあるはず。


もう少し調査してみよう!













・・・と思ったが・・・




ま、開けるようになったからイイや。





そのうち気が向いたら、ちゃんと調べる。





 





2010年09月28日(Tue)▲ページの先頭へ
EeePcの無線LANがつながらない

Q:普段使っているEeePcの無線LANが突然使えなくなりました。

A:環境をいじったんじゃないの?

Q:何もしていないっ!昨日まで使えていたのにぃ!

=====================

...ということで自分で調べた結果。


何てことはない。
EeePcには無線LANの機構自体をOn/Offできるスイッチが付いていた。


[Fn]キーと[F2]キーを同時に押下すると、On/Off切り替えされる。
ようは、これがOffになっていただけなのだ。




よく考えてみれば、どこかしこでも無線LANが有効になっているのも
按配は良く無いし、こういったスイッチが付いているのは理解できる。




ちなみに、この機構をOffにするとネットワーク接続のプロパティから
ワイヤレスネットワーク接続のアイコン自体も消えた。

一見すると、無線の機能が壊れたのか?と勘違いしてしまいそうだ。




まぁ、知っている人からすると当たり前のことかもしれないが、
自分にとっては難問であった。





ちなみに、誰がこのスイッチをOffにしたのだろう・・・

自分には全く身に覚えが無い。





恐らくウチの猫がうっかり踏みつけて、押しちゃったんだろうなっ

















ウチには猫は居ない・・・









 

2010年09月23日(Thu)▲ページの先頭へ
EXCELエクセルVBAでエラー400

Q:エクセルのVBAでエラー400が発生。

A:400だけじゃ分からない
  他にも何かメッセージ、出てるだろ!

Q:だから、400しか出てないんだって!


=====================

...ということで自分で調べた結果。

Microsoft Excel Objects の方にこのようなマクロを記述した場合に発生する様子。


でも、こうすればエラーは出なくなった。


ようはsheetを特定できないようなマクロは書くな!...ってことだろう。
これは、覚えておくことにする。

でも、最初から標準モジュール(Module1)に記載しておけば、
エラーにはならないみたいだ。


よく分からんが、エラーを発生させない方法は分かった。



ちなみに、1行づつトレースしたところ別のエラーが出た。



実行時エラー 1004
アプリケーション定義またはオブジェクト定義のエラーです。





よく分からないが、同じ原因だろうな、たぶん。

これについては、また別の機会にでも調べよう...