• ベストアンサー

マイクロソフト系簡易データベースを解説しているヘルプファイル名

Microsoft Basic では, OPEN File18$ FOR ISAM Custbl "Nani" AS #11: '要 TYPE宣言 Custbl CREATEINDEX #11, "CuIDIdx", 0, "Siran": '重複可 インデックス名"CuIDIdex" 新規作成 SETINDEX #11, "CuIDIdx" より簡易データベースを使用できました。これらは、 cobol の sort file の雰囲気で使用してきました。 Visual Studio 6.0 の Visual Basic 文法ヘルプ(VBENLR98.CGM)内 OPEN ステートメントには,記載がありません。 マイクロソフト系簡易データベースを Visual Basic で利用するための文法を解説しているヘルプファイルはどれなのでしょうか。 それとも Professional Edition のため入っていないのでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
  • ARC
  • ベストアンサー率46% (643/1383)
回答No.6

>>ODBCデータソース「ISAM2」があるとします >の条件が満足できず.お教えいただいたプログラムの実行はできませんでした。 あ、少し考え違いをされているようです。 「ISAM2」は、お使いのWindows上の操作にて作成するものです。 例えば、WindowsXPの場合ですと、 スタート→コントロールパネル→パフォーマンスとメンテナンス→管理ツール→データソース(ODBC)を起動します。 次に、システムDSN→Text-Trieverを実行します。(Text-Trieverは、ISAM形式のテキストファイルにアクセスするためのデータベースドライバです。) データソース名には適当な名前を付けます。先の例では、これに「ISAM2」という名前をつけました。 (尚、先に書きましたように、標準の構成でText-Trieverが入っているかどうかは未確認です。) 次に、「現在のフォルダを使用する」のチェックを外し、「フォルダの選択」から、テキストファイルが格納されているフォルダを指定します。 更に、「オプション>>」をクリックし、「書式の定義」をクリックしますと、ファイル中のフィールド定義を行うことが出来ます。 (ISAMであれば、恐らく「固定長」を選択すればいいはずです。 対象となるファイルをまず選び、書式を固定長にし、各フィールドごとに、フィールド名、データ型、列幅を入力して「追加」を押下、ですね。) 以上のような感じで、該当のファイルにアクセスできる準備が整いますので、後は、他のODBC経由のデータベースと同等の操作でOKな筈です。 先のサンプルなどは不十分な点も多いですので、矢張り市販の書籍などを見て試行錯誤されるのが理解への近道なのでは、と思います。 ODBCは、少しクセがあるものの、一度慣れてしまえば後々役に立つことがあるかもしれません。 焦らず一歩ずつ覚えていけば、そのうちに使いこなせるようになるはずです!

aramananto
質問者

補足

システムが合わないです。 ODBC関係のツールは Microsoft Visual Studio 6.0 Microsoft Visual Basic 6.0 (新しいプロジェクト内の) キャンセル アドイン ビジュアルデータマネージャー で起動し.関係ファイルを作成することになるようです(やっと見つかりました.i/o, 1999.10., p74。ただ私の使い方は一切表示をしないので表示変数領域を作業領域に割り当ている方法が記載されている関係で.宣言関係の変更ができませんでした)。 市販書籍の使用につきましては.下記質問を参照してください。 マイクロソフト社が責任を持って言語の文法解説書を発行していません。したがって.他の言語も同様と考えられます。 http://oshiete1.goo.ne.jp/kotaeru.php3?q=677240 現在1000程度のファイル書き換えが安定して動作しない(おそらくファイルバッファとしてメモリーが分断された結果.VBインタープリターが動作できなくなっていると考えられます)ので.マイクロソフト社のサイトの使用を見合わせています(取扱説明書に書き込む事と同様に.私用ライブラリとして内容を書きかえられませんから)。現在ファイルバッファ領域の変更方法を探しています。何年か前の雑誌に書いてあったはずなのです。 各社で発行している解説本については.たとえば.マイクロソフト社でコレクションの概念を用いた頃に発行になったある本では「MS-DOS系の開発言語を覚えている人々の為に」と明言しておきながら.コレクションの概念の説明がほとんどされません。言語開発ソフトの操作方法.新規に導入された概念の両方の説明がなければ.新しい言語になじめませんから。他の本も同様かと思います。 また.覚える価値があるかどうかは疑問です。というのは. http://www3.kcn.ne.jp/~wataru/vb/ado.htm ' レコード追加 With lobjRS .AddNew .Fields("number") = "00000010" .Fields("name") = "taro" .Fields("age") = 18 .Update End With http://acvb.s19.xrea.com/doc/013.html rs.AddNew rs!ID = "9999" rs!入力日 = Date rs!金額 = 200 rs!品名 = "その他" 'レコードを追加する rs.Update '更新する http://acvb.s19.xrea.com/doc/014.html rs.AddNew "名前", "新入社員" と変化しています(いずれも私の環境では動作しません。)。 rsやlobjRSの宣言については.以前お教えいただいた内容と同じです。 また.マイクロソフト社におけるデータベース関係の文法の変化が著しいので.自分にあったライブラリを用意して.以後.このライブラリだけを使用することを考えたほうが良いかと思います。 1987年頃 MS-Basic の ISAM 1995年頃 Access97やVB4で使用されていたDAO(Data Access Object) 1999年頃 Access2000で使用されていたADO(Active Data Object) そして最近は.SQLとなりつつあります。わずか5年程度で言語仕様が根本的に変化するということは.覚える価値がないのです。高齢になり新しいことが覚えられなくなったらば.解雇する(新規言語を教育するのは無価値。覚えている環境をそろえる事が必要との旨の説明がVisual Studioのマニュアルに記載されています)と考えられますから。また.コンピューター関係の商取引のための共通語としての JIS X 0001 から JIS X 0022 が定められています。マイクロソフト社がJIS認定工場でないにしても.日本で商取引を行うのであれば.用語としてJISを使うのが当然でしょう(JIS認定工場は1桁ですが.認定工場以外の商取引の規格として残っている規格が結構ある)。しかし.独自性の高い(好き勝手で統一性のない)定義には困ります。 また.Visual NETでは旧来のファイル入出力関係が廃止されたようです。つまり.覚えてもすぐに使えなくなることが予想されます。 以上上げたソフト例はいずれも現時点で動作に成功していません。おそらく動作環境の問題と思われます。 解釈が困難なエラーメッセージ(ヘルプを参照するとADOヘルプメッセージの「ようこそ...」と表示されてしまい解説になりません) あるいは.「引数の型が一致していない」との旨の説明が出ますが.AddNewの引数(VBは何かのプロシージャと解釈しているようです)を調べる方法を見つける方法がみつかりません。 参照したサイトは以下のとおり。 http://acvb.s19.xrea.com/ Microsoft Access Tweak http://www3.kcn.ne.jp/~wataru/vb/vb.htm VBでもやってみようか

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (6)

  • ARC
  • ベストアンサー率46% (643/1383)
回答No.7

>システムが合わないです。 ん~、環境によって違いはありますからね。 お使いのOSのバージョン、VBのバージョン、DAOやADOといったミドルウェアの種類とバージョン、エラーが出るのであれば、その時のエラーメッセージ等があれば、より詳しい回答が付くかと思いますよ。 とりあえずカンでの回答なのですが、参照設定を見直されては如何でしょうか。 お書きになったURL(http://acvb.s19.xrea.com/doc/013.html)と同じような参照設定になっていますか? >また.覚える価値があるかどうかは疑問です。というのは. : >と変化しています(いずれも私の環境では動作しません。)。 に関しては、バージョンによる構文の違いではなく、複数の書き方がサポートされているってことです。 この辺の文法は、昔からさほど変わっていないので、VB6.0であればどちらの書き方で書いても動作すると思います。 (逆に言えば、動作しないのであれば、構文以外の面が原因であると思われます。) (以下、蛇足です) 確かに、コンピュータ関連は変化の早い業界ですよね。 次から次へ新技術が登場して、古くなれば容赦なく切捨てられる… 覚悟の上とはいっても、因果な商売だと思いますね、自分でも。 ミドルウェアの変遷にしても、MS社だけで15年間で3世代ですか。それ以外にもJAVAにはJAVAのミドルウェアがあったりと、数を挙げていけばきりが無いですねぇ。 結局、どんなやり方を採るせよそれぞれ一長一短があって、その時々でどれにするのかを決めていかなくてはならないんですよね。 もし、将来にわたって技術の変化が無いことが保障されているんであれば、心置きなく日々の勉強をサボることが出来るんですが(笑)。 >また.マイクロソフト社におけるデータベース関係の文法の変化が著しいので.自分にあったライブラリを用意して.以後.このライブラリだけを使用することを考えたほうが良いかと思います。 確かに、用途を限定するのであれば、そういう考え方も有るかと思います。 データの規模も行うデータ操作も(将来にわたって)一定の範囲内に限定されているのでしたら、恐らく仰るやり方の方が有利なのでしょう。 反面、複雑なデータ操作を行ったり、大量のデータを高速に処理する必要に迫られたり、といった局面がもし有るのだとすれば、やはり独自ライブラリでは限界が出てしまうのではと思います。 既存のライブラリを使えば数行で済む内容を、独自ライブラリのために数百行も費やして、テストや仕様書作成の手間もかけなくてはならない、といったコスト面での問題も出てくるでしょうし。

aramananto
質問者

お礼

どうやら原因が特定できました。 http://www3.kcn.ne.jp/~wataru/vb/ado.htm 等で cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & lstrPath & ";" のように末尾に半角の「;」を入れてOpenしていますが、これが抜けていたために lstrPath = App.Path & "\test.mdb" cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & lstrPath & ";" lstrSQL = "select * from student" lobjRS.Open lstrSQL, cnn, adOpenForwardOnly, adLockPessimistic のように「, cnn, adOpenForwardOnly, adLockPessimistic」を指定するような構文が全部エラー(オブシェクトを指定しろ)になりました。 またこのような宣言された語を使用しないでOpenする myRS.Open "Select * from 名簿テーブル" では.レコードを追記ができない状態でOpenされるために.わけのわからない英語のエラーメッセージ(3251)が表示され myRS.AddNew 以下の構文がつかえなくなります。こちらは.末尾の「;」がなくてもOpen可能です。 文法エラーが発生しない障害なのか.省略形を認めている使用なのかヘルプメッセージからは読み取れませんでした。 本来ならば「何というオブシェクトがどこで抜けているから.指定しろ」とか.「○文で指定した構文によってこの命令は使用できない。使用するのであれば○文に×という指定を追記しろ」くらいのエラーメッセージを表示すべき(私の使っていたデカコンはメモリーが1MB、HDDが128MBしかないにもかかわらずこのあたりのエラーチェックは厳格であった)でしょうか、マイクロソフトのエラーメッセージ・ヘルプメッセージでは省略されています。 ヘルプファイルを眺めた雰囲気からすると任意のところを変更しても他のところを変更しないですむような文章の書き方であり、マニアルとしては欠陥商品でしょう。 一応.Open, Close, Read, Writeの4命令が使えるようになったので、一応区切りとし、他の問題は別の質問として掲載したいかと思います。いろいろありがとうございました。

aramananto
質問者

補足

参照設定はあわせてありました。ただ.余分な設定の影響があるかもしれません。 使用していた機器のおそらくメインボードが半断線になり、振動で暴走するようになりました。原因の特定および復旧作業に手間取り応答が遅れたことをお詫びいたします。 ms-basicでISAMの制限を逃れるソフトを作ってありますので、ちょっと移植する程度です。速度は期待していません。ms-basic+ペンテ133MhzのPC-9821(1996年頃)の半分程度の速度しか、VB 6.0発売当時(1999年頃)のWindowsでは出ませんから。 また、大きな問題(ボリウム分割が必要程度の大きさ)には、マイクロソフトの製品では未対応です。この点は自作ソフトで目一杯苦しんだ内容です。従って対応済みです。 小さくない問題(同一ボリウム内の1/3程度の大きさ迄)では、複数キーの問題があります。私のソフトではシングルキーしか対応していません。当座の問題としては、キー以外の内容を元にして削除を行う時に全体を読みなおす必要があることです(ISAMではファイルハンドルが1キーあたり3つも使われる。システムに3+3必要で、ユーザーファイルを10個ぐらい同時openしているので、1キーしか作らなかった)。 またセクター長が固定なので最大長にあわせる必要がありファイルによっては90%以上が空白の場合があります。 複数フィールドに分割保存する方法(n88等の256固定フィールドの頃に良く使った方法。何人も絶句させてしまったので今はあまりやりたくないです)もありますが、データを固定して保存する方が楽で複数キーに対応する時にでも考えましょう。 小さな資源(1000個以下程度)では.システムが巨大過ぎるという問題があります。元々ボリウム分割を前提に作った内容なので、入力ボリウムが複数・出力ボリウムが複数・作業ボリウムが複数なんて余計な作業内容がありますから。 先日1つ移植して10000個1MB程度の少ないデータ量ですが.PC-9821(ペンテ133Mhz)で20分、Win98SE(ペンテ2400Mhz)で1時間程度と比較的高速に処理しているようです。これは、MS-Basicのメモリー制限で20-40KB程度以上のユーザーメモリーを使用するとシステムがハングするという特徴があります。そのために、少量づつ処理しているのでマルチタスク処理の場合に(他のタスク(Visual Basic本体等)の切り替えに使われてしまい)速度が遅くなりやすいためでしょう。処理単位を可変にして適当な場所を見つけるか、ご指摘のようにADOに変更するか、どちらにするか、今迷っています。

全文を見る
すると、全ての回答が全文表示されます。
  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.5

>sqlで検索したところ Visual C関連で英文のヘルプファイルが見つかりました。時間をかけて和訳するしか方法がないようです。 どうしてそうなるんですか・・・ SQLとはRDBMSのための言語のことです。 他の方がかかれているように、ADOとかDAOなんてキーワードで検索してください。

全文を見る
すると、全ての回答が全文表示されます。
  • ARC
  • ベストアンサー率46% (643/1383)
回答No.4

ADOやDAOに関しては、市販の書籍にも詳しいですよ。 内容はAccessやSQL Serverに接続する為のものが殆どかと思いますが、実際問題、ODBCが使えさえすれば、DBの形式が何であってもさほど違いは無いですので… ODBCのテキストドライバに関しては、恐らくやってみれば判るかと思います。 テキストファイルの入っているフォルダを指定して、使用するテキストファイルと、そのフィールド定義を設定するだけですので。 MSDN内のADOに関するページはこちら。 http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/jpado260/htm/dasdkadooverview.asp 同じく、ODBCに関するページはこちらです。 http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/vccore/html/_core_database_topics_.28.odbc.29.asp

aramananto
質問者

補足

関係しそうな頁すべてのダウンロードが先日終わりました。適当に組み合わせて私用HTMLファイル化にまだ時間がかかりそうです。 Visual studio では.英文の説明が ODBC Help(ODBC200.CHM), と 内容説明だけ日本語のMicrosoft Activexデータオブシェクト(ADO200.CHM)に 見つけることができました。

全文を見る
すると、全ての回答が全文表示されます。
  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.3

>>MS製のDBでしたらAccessで使用されているMDBを >持っていません。マイクロソフト社系データベースソフトが >あまりにも低機能だったので.MS-Basicで自作しましたから。 Accessで使用していると書きましたが、使うのに必要とは書いていません。 あれば楽ですけど。 VBからMDBの作成、テーブルの追加、データの作成などがすべて行えます。 データ操作はSQLを使用します。

aramananto
質問者

お礼

sqlで検索したところ Visual C関連で英文のヘルプファイルが見つかりました。時間をかけて和訳するしか方法がないようです。 お付き合いいただきましてありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
  • ARC
  • ベストアンサー率46% (643/1383)
回答No.2

Windowsでは、ODBCという、DBにアクセスするための統一規格がサポートされています。 テキスト形式(ISAM)にアクセスするためのODBCドライバも、OS(だったかOfficeだったか)の中に含まれています。 で、このODBCを使用して、Excel,Accessその他のアプリケーションがDBにアクセスできるわけです。 VBからDBを扱う場合、「ADO」或いは「DAO」といったミドルウェアを用いるのが一般です。 始めにWindows上でODBCの設定(フィールドの定義など)を行い、その後で、VBからADO等を使用してデータにアクセスする、ってな感じになりますね。 ODBCドライバや、ADOについては、MSDNライブラリ等に詳しいかと思います。 以下、サンプルです。 ファイル「ISAM.TXT」にフィールド「A」「B」「C」があって、これアクセスするためのODBCデータソース「ISAM2」があるとします。 VB上でMicrosoft ActiveX Data Objects ?.? Library に参照設定がされていることとします。 Private Sub Command1_Click()   Dim Conn As ADODB.Connection   Dim RST As ADODB.Recordset      Set Conn = New ADODB.Connection   Conn.Open "ISAM2"   Set RST = New ADODB.Recordset   RST.Open "SELECT * FROM ISAM.TXT", Conn         RST.MoveFirst   MsgBox RST.Fields("A")   RST.MoveNext   MsgBox RST.Fields("B")   RST.MoveNext   MsgBox RST.Fields("C")   Conn.Close End Sub 見ての通り、最初のレコードのフィールドA,次のレコードのフィールドB,3件めのレコードのフィールドCを表示してます。 一般のデータベースと同じような感覚でアクセスできる為、柔軟性も高いんですよね。

aramananto
質問者

お礼

手持ちのVisual Studioは.サブセット版らしく.関係情報の多くは掲載されていませんでした。 ゆっくり時間をかけて探すしか方法はなさそうです。 お付き合いいただいてありがとうございました。

aramananto
質問者

補足

手持ちのVB内関係ヘルプメッセージを局所参照可能にタグ関係を修正しようと.VBでプログラムを作り実行.半分ぐらい処理したところでVBプログラムがハングアップし.処理の継続はできませんでした。大きな資源の場合の処理(分割実行等)が必要と思われたので.作成を途中であきらめました。 マイクロソフト社の関係情報を集めたのですが.局所参照をしようとすると.特定のサイトに接続しようとし.該当情報が見られませんでした。ファイル総数から大きな資源の場合の問題が発生すると考えられ.書き換えは見合わせています。 私の場合.コボルのソートファイルの代用として.データベース処理を実行していますので. >ODBCデータソース「ISAM2」があるとします の条件が満足できず.お教えいただいたプログラムの実行はできませんでした。 プログラム内で.適当なフィールドを作り.関係情報を書き出し.関数としてデータベースファイルを参照して(データベースファイルの指示にしたがって入力ファイルから書き換えた内容を出力ファイルとして作成する).プログラム実行終了後にデータベースファイルを破棄する(保存するだけのディスクスペースがない) という使い方がほとんどです。HDDに過度な負荷を加えるソートプログラム(データ数200-300程度に分割して整列し作業ファイルに保存.作業ファイルを合併する)が手元にあるので.40万個程度でも1時間程度で整列できるので.こちらを使うか. データベースといっても.単なる文字関数ですので.たとえば http://www.okweb.co.jp/ を OKWeb に書き換えればなんとかなるから.巨大なIF文群からなるプログラムを作るプログラムを作るか.自前で外部参照配列を作るか.等も考え始めました。 当座は.マイクロソフト社のサイトをさまよって見ます。

全文を見る
すると、全ての回答が全文表示されます。
  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.1

VBからは大抵のDBに、DAOやADOといったミドルウェアを使用してアクセスできます。 簡易かどうかは分かりませんが、MS製のDBでしたらAccessで使用されているMDBを使うのはどうでしょうか?

aramananto
質問者

補足

>MS製のDBでしたらAccessで使用されているMDBを 持っていません。マイクロソフト社系データベースソフトがあまりにも低機能だったので.MS-Basicで自作しましたから。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • MySQLでデータベースを一つのファイルにひたすら保存していいのか

    MySQLでデータベースを一つのファイルにひたすら保存していいのか PHPでMySQLを使用しています。 データベースを作る時は以前から二つの方法を使っています。 ・データベースファイルを一定のデータ量になると分割する方法 ・データベースファイルを分割せず一つのファイルにひたすら保存していく方法 これはどっちがいいのでしょうか? 一つのデータベースファイルに保存し続けるとユーザーがアクセスする際は そのデータベースファイルにしかアクセスしないので共有ロックの関係で ユーザーが増えるほど分割した場合に比べてオープンが低速化したりしないでしょうか?

    • ベストアンサー
    • PHP
  • VisualBasic6.0で状況依存ヘルプを表示したいです。

    富士通PowerCOBOLV7.0で、プログラムを作っています。 そのプログラムで[ヘルプ]ボタンを押したら、HTML Help(*.chm)を起動するようにしたいのですが、COBOLから直接ヘルプファイルを起動できないようです。 そこで、COBOLから一旦VBのプログラムを呼んで、そのVisual Basicからヘルプファイルを呼ぶようにしようかと思います。 また、状況依存ヘルプとして、表示されている画面に関するヘルプを表示したいです。 Visual Basicから状況依存ヘルプを表示できるようなのですが、具体的にどうすれば良いのでしょうか。 MicroSoftのページを検索してみたけど、うまく見つけられません。 ヘルプファイルは、ヘルプましんで作りました。 Visual Basic6.0(ほぼ初心者)です。 よろしくお願いします。

  • COBOL コンパイラ

    COBOLの無料コンパイラをダウンロードしようと思い、Open COBOLを使用することにしたのですが、MinGWのインストールが上手くできません。 上手くできないというか、どのファイルを選択すれば良いのかわかりません。 また、Open COBOL以外でも、COBOLの無料コンパイラがあれば教えてください。 ちなみに言語初心者です。

  • ファイルの存在の有無を調べたい

    こんにちは. 現在VBで課題(研究?)をやっているのですが, 1.VisualBasicのOpenステートメントを使用してテキストファイルを作成し,   そこに書き込みをする 2.友達が作成したEXEをを呼び出す.   EXEでは,1で作成したテキストファイルに書かれたものを使用する ということをしたいのですが, Closeステートメントを使用して直後に2の動作に入るのですが そうするとファイルがありませとエラーがでてしまいます. でも,Closeステートメントでブレークポイントを置き, フォルダ内を見るとテキストファイルが存在していて, F5を押すとちゃんとEXEが起動するんです. 以上のエラーをなくすために For文でまわし, ファイルの存在の有無を調べ, ファイルの存在が確認された時点でFor文をBreakし, Exeを呼び出すという流れにしたいと思っています. しかし,ヘルプを見てもファイルの存在の有無を調べるステートメントや 関数が見つかりません. どうか助けてください.

  • プログラミングで

    当方、環境はUNIXでプログラミング初心者なのですが、 整数型二次元配列[5][5]宣言; ファイルポインタ宣言; 読み込みファイルオープン; ファイルから読み込みループ; 行の昇順ソート; 列の昇順ソート; 出力ループ; ファイルクローズ; リターンゼロ; これをプログラミングする場合は main(){ からテキストファイル名はsort.txtと仮定すると どのように書いたらいいのでしょうか?

  • 建設業会計ソフト「データベースのオープンに失敗しました」となります

    建設業会計ソフトの「アイサット」という物を使用しています。 96年頃に開発された物です。 XP Home Edition Version 2002 Service Pack 3で問題なく使用していました。 アイサット For Windows NT/Windows95 ファイルの種類は(*.idb)となっています。 パソコンを買い換え、 XP Professional  Version 2002 Service Pack 3 で使用しようとしたところ、 ソフトのインストールは出来ましたが、ファイルのオープンが出来ません。 メッセージは「データベースのオープンに失敗しました」です。 メーカーは既に解散しており、五里霧中の状況です。 OSの違いは、「ホーム」と「プロフェッショナル」の違いだけです。 何か、ヒント等浮かぶ方がいらっしゃいましたら、よろしくお願いいたします。

  • エクセル マクロ OPENメソッド

    いつもお世話になります。 OPENメソッドでファイルを開く時に、既にファイルを開いていて、内容を変更していると、「2重に開くと・・・」のメッセージが出てきます。 If Then ステートメントで、開いている時には処理を行わないようにしたいのですが、ヘルプで調べたりしたのですが、構文が分かりません。どなたか教えていただけますでしょうか。 また、このようなことが簡単に分かる書籍などご存知でしたら、あわせて教えていただけますでしょうか。

  • 建設業会計ソフト「データベースのオープンに失敗しました」というエラー

    建設業会計ソフトの「アイサット」という物を使用しています。 96年頃に開発された物です。 XP Home Edition Version 2002 Service Pack 3で問題なく使用していました。 アイサット For Windows NT/Windows95 ファイルの種類は(*.idb)となっています。 パソコンを買い換え、 XP Professional  Version 2002 Service Pack 3 で使用しようとしたところ、 ソフトのインストールは出来ましたが、ファイルのオープンが出来ません。 メッセージは「データベースのオープンに失敗しました」です。 メーカーは既に解散しており、五里霧中の状況です。 OSの違いは、「ホーム」と「プロフェッショナル」の違いだけです。 何か、ヒント等浮かぶ方がいらっしゃいましたら、よろしくお願いいたします。

  • ファイル名が決まっていないファイルのデータを取り出しひとつのファイルにまとめる

    初めまして。 マクロ超初心者です。まだまだ勉強中でして自分で作るのは困難です。しかし、来月には必要なので… よろしくお願いします! エクセル2000で以下のマクロを作成したいです。 1.フォルダ内のCSVファイルを開き、中のデータをひとつにまとめる。 (フォルダ名とファイル名、ファイル数はその時によって変わってきます。ファイル数はだいたい10個くらいです。ひとつのデータは20列50行くらいで列の項目を基準にまとめたいです。) 2.列を1列目に挿入し、2列目と3列目のデータを1列目に統合する。 3.1列目のデータを使用し、重複を調べる。重複がある場合はどちらかひとつを削除する。(できれば4列目のデータを比較し数値が少ないほうを削除したいです。) ファイルを開くところまでは検索して探し当てたのですが、ファイル名が決まっていないことが難しく詰まってしまいます。 Sub OpenAllBooks() Dim filename As String Dim openedbook As Workbook Dim isbookopen As Boolean filename = Dir(ThisWorkbook.Path & "\*.csv") Do While filename <> "" isbookopen = False For Each openedbook In Workbooks If openedbook.Name = filename Then isbookopen = True Exit For End If Next If isbookopen = False Then Workbooks.Open (ThisWorkbook.Path & "\" & filename) End If filename = Dir() Loop End Sub 詳しい方よろしくお願いします!

  • ファイルの読み込みについて

    いつもお世話になっています。 早速質問なのですが、VBのファイル処理において固定長データのテキストファイル読み込みの処理で、 固定長データの改行コードがChr(10)になっているデータがあります。 下記のどのOpenステートメントを使用しても、1行読み込みではなく全行読み込まれてしまうのです。 ↓ファイルモード (1)Open strInFile For Input As #intInFile (2)Open strInFile For Random As #intInFile Len=文字数 (3)Open strInFile For Binary As #intInFile ちなみに読み込みのモードは ・Line Input ステートメント ・Get ステートメント の2つを使用してみました。 改行コードの種類に依存せずにデータを1行読み込む方法を教えていただきたいです。