トラブルと対策
このページでは、私の作成したプログラムが正常に動作しない時に、対策方法が判明している場合の御説明をしております。
但し、使用環境の相違などにより、全ての方に対して問題が解決するとは限らない事は御承知置きください。
又、私の環境では再現出来ない問題に対しての対処も非常に困難である事も御理解をいただきたいと思います。
これは御質問者の方の環境が悪いと言う意味では無く、私の環境では開発関係のファイルが全てインストールされておりますので、動く場合が多いからです。
●馬ちゃんのデータベース(Ver 1.13)のトラブル
昨日(2020年6月15日)、以下のような御質問(お怒り?)のメールをいただきました。
特定の日時からのデータが取り込めないような場合は、雪などの影響でレースが途中で中止になった場合に、ソフトがそれに対処していないためにエラーになる場合が多いです。
それで、4月4日にそんな事があったのかを調べたのですが、3月29日は中山で3R以降のレースが中止になりましたが、4月4日は特に異常な事は起こっておりませんでした。 そこで、寝る前に JRA-VAN からダウンロードして、そのままの状態で Setup で取り込みを行った時の画像が以下のようになります。
その前に、私がテストした環境は以下のようになります。(OSは64bitです)
E5640は920の低消費電力版と言われており、第一世代のi7 CPUで、その遅さは(現代では)特筆物です。 私は980Xと言う1366系では最上クラスのCPUを搭載したパソコンも所有しているのですが、それと比較しても、(UMAデータやSEデータは)1ブロックで1分程度処理が遅かったです。(クロックアップのせいか、時折堕ちますが)
もし、これより取り込みが遅いパソコンをお使いなら、買い替えをお薦めします。 尚、OS はWindows7 から無料アップデートを行った物です。
画像加工をして途中をカットしておりますが、エラーが無くて正常終了しているのは意外でした。(嬉しい事ではありますが)
御質問された方の場合は、恐らくRACEデータの4月4日の部分から飛んでいて、データが取り込めていないと思います。(なぜなのかは分かりませんが)
ですから、「Setup」取り込みが失敗するのであれば、「通常取込」で取り込んでも失敗するだろうと思います。
【注記】
他の競馬ソフトでも新規取り込みを行うと、取り込みデータが飛ぶのであれば、C:\のProgramData(隠しフォルダ)内にあるJRA-VANファルダにある Data Lab フォルダのcacheとdataフォルダ内の全てのファイルを削除すると直る場合があります。
これは、何らかの影響で、JRA-VAN のデータが破損している場合があるからです。
全てを削除しても、それほどの時間も掛からず、自動的に作成されるようです。(作成が間に合わず、取り込めない場合は 403 エラーになります)
取り込み状態はアクセスファイルを直接操作しなくても、「Umachan113.ini」の中に記入されていると思います。
逆に言うと、それに書いてある内容をデータベースが見て判断して動作しますので、直接内容を書き換えても駄目だったような気もします。
色々なバージョンがあって、私も混乱しておりますが、JRA-VAN からダウンロードしたファイルでは、インストール後も「TimeStamp」欄は空白の状態でした。
「MakeDate」に99999999をセットすると記載内容をデータベースに登録すると書いてありますので、今回の場合は直接編集しても問題は無いような気がします。
取り込み時の動作を見れば一目瞭然ではありますが、再度取り込めないと言うのが、「取り込み済み」のため取り込めないのか、取り込み動作をしないのかの判断が出来ません。
念のためにアクセス(ACCESS 2019)で、データベースの中身を確認してみました。
2020年の6月15日まで正常に取り込まれております。
御質問者の方には申し訳ないのですが、しばらく保留するしかありません。(このページの内容の御連絡はします)
馬ちゃんのデータベース(Ver 1.13)には、データベースの内容を確認するためにJRA-VAN の「馬吉」を改造したソフトを入れてあるのですが、そのソフトで先週行われた「マーメイドS」を表示させたのが以下の画像です。
起動したら、特に問題はなく表示されました。
御質問者様から、早速の御返信をいただきました。
別の端末に再インストールしたら、そちらは正常に終了したそうで、なによりです。
糞ソフトだと(その傾向はありますが)、ほっぽり投げられているのかなと思っておりましたが、やや安心を致しました。
懲りずに、(今まで見つかっているバグを修正した)バージョンアップを考えておりますので、その節は宜しくお願いを致します。
●エクセル起動時のトラブル
エクセルを起動した時に、最初のトラブルとして遭遇するのがこの画面だろうと思います。
このプログラムでは起動時に多くの部分をチェックしています。
それは以下のような内容です。
(1)プログラム名のチェック
プログラム名を古いバージョンのプログラム名に変えたりしても起動しないように、拡張子も含めてチェックしています。
プログラム名が異なると起動できません。
(2)日付のチェック
パソコンの日付がリチウム電池の劣化などによって実際の日付と異なると、色々な部分で支障をきたします。
実際は、このプログラムの起動の前に気が付く内容ですが、念のためにチェックしています。
(3)ファイルの中身のチェック
エクセルファイルの内容が正しいかチェックを行っています。
チェックにはCRCチェックを使用しており、環境設定ファイル(Umachan110.ini)の[FileCheck]のCheckCordの項目にCRCデータが記載されています。
以前のバージョンでも同様のチェックは行っており、バージョンによってチェック内容は異なりますが、主にファイルの容量や特定の領域の内容でした。
以前はプログラムの改竄のチェックも兼ねておりましたので、CheckCordも分かりにくい内容にしておりましたが、今回は純粋にCRCコードだけをそのまま記載しています。
従来はチェックコードが異なると一切起動できないようにしておりましたが、今回はコードが異なっていた場合はCRCコードを書き換えて起動できるようにしております。
理由として固定にした場合には、使用環境や日時によってCRCコードが変化して、トラブルが出やすいのではないかと考えているからです。
上記の画面が出て、プログラム名のチェックや日付も問題がなく、再起動しても駄目な場合はエクセルプログラムを変えてみてください。
どうしても駄目な場合には、環境設定ファイル(Umachan110.ini)を削除したり、環境設定ファイル(Umachan110.ini)を暗号化している場合は暗号化の環境設定ファイル(Umachan110.ini.enc)のファイルを削除すれば回復する場合があります。
このプログラムは、動作に必要なファイルが無い場合は自動的に作成しますので、削除しても基本的に不都合は生じない筈です。
【注記】
上記のエラー表示を無くすために、UmachanDB.exe にUmachan111xlsb のCRCチェックを行わせて環境設定ファイル(Umachan110.ini)の[FileCheck]のCheckCordの項目にCRCデータを記載するようにしました。
前述しましたように、本来は改竄を防ぐために、常に特定のコード(CRCコード)を記載すべきなのですが、エクセルが起動する前と起動している状態でのCRCコードが異なる場合もありそうなので、このようにしております。
現在は、起動前と起動後は同じCRCで問題ないようですが、もう少しテストしたいと思います。
以前のエクセルでは、起動前と起動後では異なっていたように思うからです。
現在はエクセル自体に、CRCが異なっていた場合はCRCの書き換えを行わせておりますので、起動時に毎回CRCが異なるような事がなければ、トラブルは発生しないと思います。
ただ、これでは改竄に対して何の意味もありませんので、問題がない事が確認できれば、常に同じ値を書き込むようにプログラムを変更致します。
●Windows7の使用で固まってしまう
Windows Xpで使用している時は、何の問題もなく動作していたのが、Windows 7にインストールすると不具合が連発する場合があります。
これには色々な原因があるようですが、動作しない原因の多くはセキュリティ関係によるものが圧倒的に多いようです。
「エクセル競馬予想 馬ちゃん」スペシャル版 Ver.1.10 は、初期設定でソフトを C:\Program Files フォルダにインストールしますので、多くの方はそこにインストールされている場合が多いのもトラブルの原因になるようです。
Xpでは問題にならなかった(チェックが甘かった)管理者権限なども、Windows 7 では厳格にチェックされますので、権限がないと書き込みが満足にできません。
私の場合、レース当日の速報データを取り込んでいる時に、Windows 7 のタスクトレイに常駐させているソフトが頻繁に固まるので調べたら、ソフトが時系列データを書き込もうとしても読み取り専用になっていて書き込めないので、延々と書き込み作業をしていて固まっていました。
このような原因の場合は、環境設定ファイル(Umachan110.ini)の[Odds_DIR]のOdds_DIR=以降に記載しているパスを、例えばDドライブに適当なフォルダを作成してリンクを記載したら、プログラムミスだと思って悩んでいたのが、嘘のように解決しました。(少し不安定です)
これで解決しないようであれば、プログラム本体もProgram Filesフォルダ以外に移して見てください。
プログラム本体は、どのフォルダでも動くようになっておりますから、環境設定ファイル(Umachan110.ini)のデータベースのリンク先を変えるぐらいで、動作すると思います。
勿論、プログラムがこれで良いとは思っておりませんので、Program Filesフォルダにインストールしても、まともに動作するように努力致します。
私の環境では、JRA-VAN の「馬吉」も windows7 のProgram Filesフォルダにインストールした場合は、色々とトラブルが起こりました。
マイクロソフトに、Windows Xp はセキュリティ上問題があるからWindows 7 にしなさいと言われているのは、このような事を意味しているようです。
●データの欠落がある
レースの開催日なのに出馬表がダウンロードされていなかったり、特定のデータ(例えば配当データ)がインストールされていないために複勝や馬連のオッズが表示されない場合があるようです。
データの取り込み月日を前に戻して再インストールしても駄目なようですから、プログラムに欠陥(バグ)があると考えております。
ただ、正常に取り込める部分もありますので、この原因の解明には難儀をしております。
この対応に今考えているのは、正しくインストールされたデータベースのデータから取り込むと言う方法です。
現在、データベースからデータを読み込む事ができるソフトウェアと言えば、JRA-VAN が提供している「馬吉」ではないかと思います。
このソフトは。「馬吉」の公開版と同じデータ形式を取っておりますので、私も理解しやすいですから、この「馬吉」のデータベースから「エクセル競馬予想 馬ちゃん」スペシャル版(Ver 1.11)にデータを移し変える(コピーする)のが最良の方法ではないかと思っています。
JRA-VANの「馬吉」は。公開から何年も経過しておりますのでデータの信頼性も高い枯れたソフトウェアです。
しかも、同じマイクロソフトのアクセス(ACCESS)を使用しておりますので、データのコピーも比較的楽です。
「馬吉」のデータベースから、欠落しているデータの部分を取り込んで、当面は対処したいと考えております。
私のダウンロードページから別ソフトウェアで提供する形にしたいと思っています。
【注記】
2013年の1月14日の京都競馬場のオッズをなぜか取り込まないようです。
そこから1月27日までのオッズデータを取り込まないで、2月2日以降になると機能が復活して取り込むようになります。
それと2013年4月21日~4月29日のオッズも取り込みません。
最初は、特定のパソコンだけの問題だろうと考えておりましたが、全て同じ状態になりますから、プログラム上の問題(バグ)のようです。
調べてみると、1月14日の場合は、中山のレースが積雪のために4レースで打ち切られており、その後の配当データにはJRA-VANのデータ区分でレース中止のコードが記載されているのですが、この処理でやり方にまずい点があるようです。
当方のプログラム上の問題であるのは明らかですので、引き続いて調べております。
●ストリーミング再生ができない
このソフトでは、映像のリンク先をJRAのストリーミング配信先に初期設定しています。
2012年の11月末までのJRAが映像配信をしているレースなら、通常は見る事ができる筈ですが、Media Player Classic で再生できない場合があるようです。
「エクセル競馬予想 馬ちゃん」 スペシャル版(Ver1.10)では、Windows Media Player のwmplayer.exe の存在も確認しておりますので、Windows7の場合はMedia Player Classicは必要としません。
最近のWindows Media Playerは画面も小さく、見た目も良いですから、Media Player Classicをわざわざインストールする必要はないように思います。
昨年の12月から、JRAではフラッシュでレース映像を提供しておりますので、そちらの映像にもリンクしております。
残念ながら、JRAが提供しているフラッシュ版は画面構成が素人ぽい感じで、画面下部には映像と同じ大きさの無駄な余白があります。
デザインセンスの違いによるものか、技術力が不足しているためなのかは知りませんが、もう少しなんとかならないものでしょうか。
【注記】
この問題に関しては、Media Player の対応を多くすることで凌ぐ事にしました。
現在は、mplayerc.exe、mpc-hc.exe、Windows7標準のwmplayer.exe、WindowsXpに搭載されているmplay32.exeの存在をチェックしています。
優先順位は、mpc-hc.exe > mplayerc.exe > mplay32.exe > wmplayer.exe になっておりますが、使用される方は圧倒的にWindows7に移行されると思いますので、何もしなくても映像は見る事ができるだろうと考えております。
2013年の12月から始まったJRAの「FLASH映像」は、画面デザインの悪さを我慢すれば、どのOSでも映像を見る事ができます。(アドビの、「Adobe Flash Player」をインストールする必要はあります)
私は以前はレース映像を取り込んでいたのですが、映像の変換が面倒なので、現在はこのソフトで直接JRAにリンクして映像を見ています。
JRAのやる事ですから、何時公開が中止になるかの不安は残るのですが、お金さえ出せば映像は見る事ができる(レーシングビューアーの存在)のですから、私が配信停止対策をする必要はないでしょう。
●エクセルVBA関係のエラー
トラブルの多いのがエクセルのVBA関係のエラーだろうと思います。
単純なプログラムではエクセルのVBA関係のエラーは少ないのですが、このプログラムではデータベースへのアクセスを行ったり、タスクトレイに常駐させたり、ポップアップメニューを表示さたりと結構凝った事(エクセルのプログラムでは余り見掛けない事)をしております。
それらのプログラムの基はマイクロソフトが開発したもので、エクセルではVBAの参照設定を行う事で使用できます。
この参照設定関係のエラーが非常に多いのです。
必要なファイルがパソコンの中になかったり、バージョンが異なっていたりすると参照不可になって全く動作しなくなります。
エクセルにコードプロテクトを掛けていると、エラーが発生したのは分かりますが、どのファイルが無いとかの情報表示が無いに等しく動作させるのが困難になります。
以前のプログラムではこの種の問い合わせが非常に多くて、究極の解決手段だと思ったのがエクセルのプロテクトを解除する事でした。
「エクセル競馬予想 馬ちゃん」ハイブリッド版(Ver1.08)のプロテクトを外したのは、この理由によるものが大です。
お蔭で使用者の方はそこそこいらっしゃいますが、エラー関係の問い合わせは無くなりました。
エクセルのプログラムに疎(うと)い方でも、サイトを検索すれば対処方法が詳しく解説されておりますので多くの方は自力で対処されているものと思います。
今回は再度プロテクトを施しましたので、多くの環境で動作しないものと考えられます。
その場合の対処方法も御使用の環境によって異なるために、エラー内容で問い合わせを受けても適切なアドバイスはできないと思います。
これにつきましては、公開後の状態を見て現象と対処方法を検討するしかないと考えております。
今回のバージョンにつきましては、プログラムの内容(ソース)につきましては、問い合わせを受けましても一切お教えする事ができません。
又、何らかの方法でプログラムの内容を解析できたとしても、その内容や解析方法については他言(公開)をしないでください。
利用規約に違反するだけでなく、本ソフトを御使用の多くの方が迷惑を被る事になります。
競馬予想の方法(ルーチン)につきましては、ハイブリッド版(Ver1.08)のソースをご覧いただきたいと思います。
配点の内容や予想方法は多少変えておりますが、予想に使用する内容(基となる部分)は全く同じです。
従って、両ソフトの予想結果も非常に近い事が確認していただけると思います。
私は優れた予想ソフトの上位ピックアップ馬は、実際の人気と一致する傾向があると思っています。(私のソフトはまだまだ力不足ですが)
●エクセルの64ビット版で動作しない。
「エクセル競馬予想 馬ちゃん」ハイブリッド版(Ver 1.08)は64ビットのエクセルには対応しておりませんので動きません。
スペシャル版(Ver 1.11)は完全ではありませんが、ほぼ動きます。
不具合点として確認しているのは、JRA-VAN のData Lab の取り込み関係で、正常に動作しない場合があるようです。
プログラムの Form 内に JRA-VAN が提供の JVLink Class を登録すれば解決できるようですが、通常設定では毎回起動時に不明な ActiveX Object があると警告が出ますので、登録を控えております。
【注記】
64ビット版は圧倒的なメモリー空間を利用できるのが強みの筈ですが、マイクロソフト自体もエクセルの64ビット版は強力に推進していないようです。
理由は余りにも動かないソフトが多過ぎるのでトラブルが絶えないからでしょう。
私も手が回らない事と32ビットのエクセル使用者が大部分だろうと言う点で、対応は後回しにしています。
今まで10秒掛かる処理が1秒になるのでしたら即刻対応をしますが、私が調べた限りでは大差がないと感じています。
●エクセル2013で動作しない。
Excel2013で動作しない原因は色々あって単純ではありませんが、まずマイクロソフトからデータベース エンジン を導入してください。
32ビット用と64ビット用の2種類がありますから、お使いのOSに合わせてインストールしてください。
データベースのマイクロソフト Access に起因するトラブルであれば、これで解決できると思います。
但し、「エクセル競馬予想 馬ちゃん」ハイブリッド版(Ver 1.08)は基本的にプログラムが対応しておりませんので、上記のソフトをインストールしても動きません。
スペシャル版(Ver 1.11)の場合のみ有効になります。(上記の Data Lab 関係の不具合は残ります)
【注記】
Excel2013の体験版をインストールして少し調べただけですが、Excel2013は今までのエクセルとは違うプログラムの組み方をしているようです。
専門的に言うとマルチドキュメント(MDI)タイプのプログラムから、シングルドキュメント(SDI)タイプのプログラムに変更したと思われます。
これだけの大幅な変更を行ったのは、今までの方式を継続するのに何らかの問題点があったからでしょう。
Excel2013に変更する利点も私には見当たりませんでしたので、貧乏な事もあってExcel2013は購入しておりません。
もう少しExcel2013が出回ったら、私も購入してそれからプログラムの動作テストや修正を始める予定でおります。
●Windows Me(98系OS)で動作しない。
今時、98系のOS(Windows 98、Windows Me)を使っている方は居ないと思いますし、動作可能OSの対象にもしておりませんが、実際には動くだろうと思ってセットアッププログラムを起動して見ました。
Windows Me の場合ですが、以下のような画面が出ました。
データベースプログラムはVB6で作成しておりますので動作するようですが、インストーラー(inno Setup)がはじくようです。
インストール済みのプログラムをコピーして動作させた場合の動作も保証できませんし、98系OSを使用するメリットも無いと思います。
Windows Xp もサポート終了が真近(2014年4月)なのに、98系のOSで動作させる必要性は全く無いでしょう。
●1レースを予想するのに数十秒から数分掛かる。
この場合はデータベースのインデックスが壊れているか、インデックスが作成されておりません。
データベースソフト(UmachanDB.exe)を立ち上げて、サブメニューを開いて(左上部の別メニューを開くをクリック)「INDEXの作成」ボタンを押してください。
作成されているデータベースを調べて、それらのインデックスを作成します。
時間が掛かりますが(20分程度)、「DBの再構築」ボタンを押せばデータベースの再構築とインデックスの作成の両方を行いますので、こちらを選択される事をお勧めします。
通常は1レースを予想する場合に必要な時間は数秒で競馬が3開催の場合(通常36レース)でも1~2分で予想は終了します。
尚、馬ちゃん(馬吉版).exeを動作させる場合には、より多くのデータベースを必要とします。
動作に必要なデータベースは馬ちゃん(馬吉版).exeが自動的に作成しますが、それらのデータベースのインデックスは自動的に作成しませんので、インデックスの作成は必ず必要です。
このソフトの起動時に「インデックスが作成されておりません」との警告がでますので、ソフトを一旦終了して、上記の方法によりインデックスを作成してください。
●レースの配当確定でサウンドが鳴らない。
設定ファイルの内容を以下のように変更してください。
[Sound]
Sound=ON
ButtonClick=C:\windows\MEDIA\Start.wav
RaceKakutei=C:\windows\MEDIA\notify.wav
3番目をHaitoKakutei→RaceKakuteiに変更してください。
【注記】
上記はOSがWindows Xp の場合です。
Windows Vista、Windows7,8 の場合はサウンドファイルのリンク先が異なります。
それらのOSのリンク先が判明した場合は、順次記載したします。
Windows7の場合ですが、notify.wav は同じフォルダ内にあるようですが、Start.wavは存在していないように思います。
サウンドファイルは大量にありますので、自分が気にいったものに取り換えるのも良いと思いますし、Xp をお持ちの場合はコピーするのもありかなと思います。
●JRA-VANのサーバーがメンテナンス中の場合
JRA-VANのサーバーがメンテナンス中は以下のようなメッセージが出ます。
これは、直ぐに分かると思います。
●JRA-VANのデータマイニング予想が表示されない。
[TargetLink]
TargetLink=E:\Program Files\TFJV\
SirusiTenso=ON
KaimeLink=OFF
TargetLinkは、ターゲット(競馬データ表示ソフト)のリンク先ですから、各々のパソコンで異なります。(導入していない場合は、空白)
SirusiTenso=ON を追記することによって、マイニング予想が印5に表示されます。
【注記】
今回のバージョンから、人気ソフトのターゲット(Target)との連携は少なくしております。
上記の予想印やターゲットの印欄に予想の配点を転送させるのは今回のバージョンでは止めました。
JRA-VANではターゲットを大々的に宣伝しておりますので、ターゲットにリンクが可能なようにしているソフトは多いですが、いつまでも人気ソフトにくっついたソフト開発は恥ずかしいだろうとの思いからです。
現在のソフトでは、ターゲットの「馬コメント」の記載にリンクして、エクセルで内で表示が出来るぐらいだけにしています。(文章で改行ができないなどの不満点はあるのですが、使用者が多いためです)
オッズのリアルタイムデータはターゲットのフォーマットに合わせておりますから、ターゲットのフォルダにリンクさせておけば、ターゲットを使用する場合にわざわざデータを読み込まなくても最新オッズを常時表示させておく事は可能です。
現在でも、私はターゲットから縁を切る事ができませんので、そのようにしております。(操作性は兎も角、使い慣れている機能が多いためです)
●JRA-VANからデータのインストール中に停止してしまう。
この現象も起こりやすいですが、対策方法のやっかいな現象でもあります。
それは、JRA-VANからのデータの入力は、JRA-VANのプログラムが動作して処理を行っているためであり、途中で停止してしまうのはJRA-VANのプログラムの処理が停止した場合がほとんどであるからです。
これは、私のパソコンでテスト中に実際に発生した時の画面ですが、この状態で止まってしまいました。
O5VM2009のデータの次のデータの入力が旨くいかなかったようです。
ここの次のデータは何だったのかは、取り込み状態を撒き戻してみると推測する事ができます。
撒き戻した状態ですが、これを見ると次はO6VM2009・・・のデータが来るのではないかと思われます。
このデータがどこに存在するのかですが、通常はc:¥Program Files¥JRA-VAN¥Data Lab¥dataフォルダの中にあります。
(ここでは、¥=¥の意味で半角の円マークです。)
その中のO6VM2009・・・のファイルサイズが他の同じファイルと異なっている場合などは、ファイルが壊れていると思いますので削除します。
削除しても取り込み時には、自動的に補われますので大丈夫です。
私の場合は直りませんでしたので、dataフォルダの中の全てのファイルとcacheフォルダの中の全てのファイルを削除しました。
そうしましたら正常に取り込む事が出来ましたが、この場合は数百から数千のファイルをJRA-VANから再ロードする事になります。(意外に待たされません)
但し、メモリーエラーの発生が多い不安定なパソコンをお使いの方は、再ロードしても再発する場合がありそうです。
【注記】
上記の現象は、最近では遭遇したことがありませんので古いバージョンの画像を使用しております。
この現象が起こるのは、JRA-VANから取り込んだデータが破損しているのが原因であるのが圧倒的に多いようです。
●スペシャル版(Ver1.11)のデータベースをハイブリッド版(1.08)で使いたい。
「エクセル競馬予想 馬ちゃん」スペシャル版(Ver1.11)と「エクセル競馬予想 馬ちゃん」ハイブリッド版(Ver1.08)のデータベースの構造は非常に近いのですが、完全に一致はしておりませんので以下のようなエラーが出ます。
ハイブリッド版(1.08)でもデータベースの肥大化を押さえるために、データの構造に工夫をしておりますが、スペシャル版(Ver1.11)では更にそれを進めております。
「エクセル競馬予想 馬ちゃん」スペシャル版(Ver1.11)はデータの取り込みを1990年以降からにしていても、メインのデータベース(Umachan.mdb)の容量が、1.4GB程度なのもその効果によるものです。
専門的になりますが、極力データをNULL化しておりますので、データベースが極端に肥大しません。
ただ、一般的なデータの中身を調べるコマンドでは、上記の画面のようなエラーが発生します。
赤字の部分がエラーの発生している部分です。
If Val(rs2!Blinker) = 1 Then .Cells(Current_Row2, 13) = "B" Else .Cells(Current_Row2, 13) = "" End If 修正は簡単で、以下のようにするだけです。(修正方法はいくらでもあります) If Not IsNull(rs2!Blinker) Then If Val(rs2!Blinker) = 1 Then .Cells(Current_Row2, 13) = "B" Else .Cells(Current_Row2, 13) = "" End If Else .Cells(Current_Row2, 13) = "" End If
要は、データベースのデータがNULL(ヌル)でなかったら、ブリンカーのコードを調べて1ならセルにBのブリンカーマークを入れなさい。
データが1以外、又はヌルだったらセルの内容を消しなさいと言う意味に書き換えるだけでエラーは出なくなります。
Not IsNull(rs2!Blinker)の部分は、IsNull(rs2!Blinker)=False などと記入しても同じ意味です。
rs2!Blinkerの部分は、rs2("Blinker")の書き方にするように指導する所もあるようです。
自分が理解しやすい書き方にすれば良いでしょう。
今回はブリンカーの部分でしたが、同じような変更箇所は多いので大変なのですが、修正は簡単です。
これを調べている時に気が付いたのですが、ハイブリッド版(1.08)にはバグに近い問題点がありました。
Module2にある Yoso_Houho の部分ですが、以下の赤い部分を外しておく必要がありそうです。
Tokuten = Tokuten_Get(Trim$(rs!JyoCD), rs!KeyCord, rs!Barei, rs!Futan, rs!KisyuRyakusyo, rs!NyusenJyuni, rs!time, rs("Jyuni4c"), rs!Ninki, rs!Odds, rs!HaronTimeL3, rs!TimeDiff, rs!Bataijyu)
この削除によって、以下の赤い部分も削除する必要があります。
Public Function Tokuten_Get(Kaisaiti As String, NenGappi As String, Barei As String, Futan As String, Kisyu As String, Nyusen As String, Souha As String, Coner As String, Ninkijun As String, ozzu As String, Agari As String, time As String, Bataijyu As String) As Integer
この馬体重のデータは使用していないので不要であるばかりでなく、データベースの中を見ると外国のレースに参戦した場合は馬体重情報が Null になっているようです。
通常はエラートラップでエラーを無視にしているので問題がないのですが、ハイブリッド版(1.08)はわざとエラーが表示されるようにエラートラップを外しておりますから、外国でのレースの場合に「Null の使い方が不正です」のエラーが出ておりました。
本来のハイブリッド版(Ver1.08)データベースを使用している場合には、エラーは出ないかも知れません。
得点の表示関係も若干異なっておりますので、データベースを共有するには色々と変更が必要のようです。
エクセル(エクセルVBA)の一般的なトラブルの対処方法
一般的なエクセルVBAについてのトラブル対処方法について記載いたします。
内容的には、自分が経験したトラブルで対処方法をインターネットで検索して対処出来たものです。
早い話が内容はほとんどが受け売りで、自分の備忘録として記載しているものです。
●Excelの起動が遅いときに試してみること。
エクセルの起動に数分以上かかってしまう状態になる場合があります。
徒然なるままだし 様のサイトに対策方法の例の記載がありました。
下記にそのままコピーさせていただきました。
エクセルの起動が遅いときには、以下を試してみる。
1. 次のフォルダを開く。
WinXP
C:\Documents and Settings\<ユーザー名>\Application Data\Microsoft\Excel
Vista
C:\Users\<ユーザー名>\AppData\Roaming\Microsoft\Excel
2.フォルダ内にある Excel10.xlb ファイルの名前を適当に変える。たとえば、oldExcel10.xlbとか。
数字の部分は、エクセルのバージョンによって異なる。
3. Excel を起動し、新規ブックを作成する。
これで起動が円滑になっているはず。
Excelが起動すると、拡張子xlbのファイルが、自動的に新たに作られる。
4.起動が円滑に行われることを確認したら、2.でファイル名を変えたxlbファイルは、削除してよい。
その他の解決方法例
その他の対処方法の解説例です。
emfファイル(一時ファイル)が増えたことにが原因の場合もあるようです。
ファイルの検索で下記フォルダ内の *.emf ファイルを削除すると解決できる事もあります。
(1)C:\Documents and Settings\[ユーザー名]\Local Settings\Temp\
このフォルダ内のファイルを全削除の方法例の解説もあります。
(1)Windows\Tempフォルダー内を削除すると解決する場合が有ります。
(1)Outlookの「履歴を自動記録する」機能が負担をかけている場合があります。
※OutlokkExpreesとは別物です。
1. Outlookを起動する。
2. 「ツール」→「オプション」→「履歴」
3. 「履歴を自動記録するアプリケーション」のチェックを外す。
この機能が必要でない場合は、すべてのチェックを外して下さい。
ネットワークを外すとサクサク動くようならば、AntiVirusソフトの影響が考えられます。
((Symantec AntiVirusがインストールされている場合)
1. Norton AntiVirus を起動します。
2. [オプション] をクリックします。
3. [その他] の下にある [その他] をクリックします。
4. [Office プラグインを有効にする] チェック ボックスをオフにします。
処理速度の遅いパソコンでウイルスソフトが稼動している場合は動作が遅くなります。
不要なアドインの組み込みが多い場合も動作は遅くなります。
●VBAのエディター画面の構成が乱れて直せない。
「ツール」→「オプション」→「ドッキング」タブを選択します。
すべてのウィンドウにチェックがついている状態が初期状態です。
「表示」メニューから以下のウィンドウを表示させます。
「コード」「プロジェクト エクスプローラ」「プロパティ ウィンドウ」
「コード」は最大化します。
「プロジェクト エクスプローラ」をVBEウィンドウの左端(ウィンドウからはみ出すくらい)にドラッグするとウィンドウ左端にドッキングします。
「プロパティ ウィンドウ」はプロジェクト エクスプローラ」の下端(ウィンドウからはみ出すくらい)にドラッグするとプロジェクト エクスプローラの下にドッキングします。
●デスクトップのアカウントの画像が全て同じになってしまった場合
「ようこそ」画面に表示されるユーザーアカウント用の画像がどのユーザーも同一になってしまい別の画像が選べなくなりましたのでサイトで調べて対処しました。
元画像はインストールディスクなどにあるi386フォルダの中に圧縮して保存されてますので、それを取り出す必要があるようです。
パソコンのフォルダ内にi386フォルダがあればそこから、無ければインストールディスクを用意します。
スタート→「ファイル名を指定して実行」をクリック。
rundll32.exe advpack.dll,LaunchINFSection %windir%\inf\shl_img.inf, DefaultInstall
と入力して、「enter」を押します。
すると《ファイルが必要》ダイアログ出るので「参照」をクリックして、i386フォルダを指定。
ちなみに、ユーザーアイコンは Documents and Settings\All Users\Application Data\Microsoft\User Account Pictures にあります。
これを応用すれば、独自のアイコンにすることも可能です。
●SSDがBIOSでも認識しなくなってしまった場合
2ヶ月前に買ったばかりのCFDの128GBのSSD(SSDは東芝製IC)2台が昨夜BIOSでも全く認識されなくなってしまいました。
きっかけはSSDの電源を電源ユニットの別のラインにしただけで、過電圧を与えたとかSSDの電源の差込を間違えたとかでは絶対ありません。
パソコンが数台あるのですが、別の2台のパソコンでもBIOSで認識しないのですから事態は深刻です。
もしこのまま動かなければ、2台ですから金銭的損失は2万前後、昨日半日掛けて作成したヘルプファイルに内容がパアになります。
これも変えた内容は、ほとんど思い出せませんからショックは大きいです。
ICだけのSSDが壊れるなどとは夢にも思っていませんんでしたから、代わりにつけた通常のHDDが頼もしくなってきました。
こんなことがあるのかと、サイトを探したらBIOSでも認識しないSSDが回復する場合もあるそうなので、その手順を記載します。
SSD BIOS 認識しなくなった場合の 復活法
1. まず 外してある思いますが 放置して置く。1日以上
2.普通に起動するデスクトップPCに 付け、 何も操作しないで アイドルのまま 20分 待つ。
3.パワーダウンする。 すぐに そのSSDを外す。 30秒待つ
4.2 & 3を 行う。
5.再度 2 & 3 を行う。
6. また 2を行う。 この時 SSDが認識されていれば 成功。
成功したり 失敗したりは やはり あるようだが、 上の手順で 2~3度 トライしてみる価値はあるようです。
私はまだ1日放置しておりませんので、今夜にでも上記に手順で試してみたいと思います。
この方法で復活してくれたら嬉し涙が出そうです。
原典は英語で以下の通りです。
There are steps you try to recover the SSD. Windows desktop users follow the same steps.
1.Once you have the drive connected and sitting idle, simply power on the computer and wait for 20 minutes.
We recommend that you don't use the computer during this process.
2.Power the computer down and disconnectthe drive for 30 seconds.
3.Repeat steps 1 and 2 one more time.
4.Reconnect the drive normally, and boot the computer to your operating system.
Crucial M4 010G Firmware then drop down towards firmware 000F
回復例
070H FIRMWARE 更新中に、不注意から電源断となり、SSDが認識できなくなりました。USB接続・SATA接続で試しましたが全く認識しない状況です。途方に暮れつつネットを彷徨い、この復活法にたどり着きました。
何かと試しましたが、結局USB接続方式で復旧できました。
当初はUSB接続しても認識されませんでしたが、10分もしないうちに突然認識し、それ以降何事もなかったように正常動作しています。FIRMWAREは070Hに更新されているようで、もう何が何だかわかりません。
環境は、自作機+Windows8に「センチュリー NEW裸族のお立ち台 USB3.0&eSATA CROSEU3S」を使って、USB3.0のポートにM4を接続!です。
ファームウェア更新に失敗した貴兄!理屈が見えないので妥当性?確実性?があるとは言い切りませんが、試す価値アリです!
1.お使いのパソコンの UEFI/BIOS にて SATA HOT PLUG の設定 enabled にできる場合Second SATA 接続にて 認識されるように なる場合があります。お試しを^^
2.Vista/7/8/8.1 をお使いで SATA AHCIモードにて 使用出来る場合AHCIに使用できる状態にして (真ん中辺りに AHCI ②変更 有り)
http://youwish.web.fc2.com/speed.htm
Second SATA 接続にて 尚且つ LPMの無効化を設定して active/ HIPM/HIPM+DIPMのどれかに 変えてみて 再起動する。 突然 認識される場合も有ります。
LPMの無効化 設定
http://youwish.web.fc2.com/lpm.htm
【レジストリを登録して高速スタートアップを無効化する手順】
キー | HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Power |
名前 | HiberbootEnabled |
種類 | REG_DWORD |
値 | 0(無効) |