<いきなりサンプルじゃぁねぇ、、文句の一つ言いたいよ>
こんにちは、(はじめまして) AB型の変わり者Ken3です。 ^^^^^^^^^^^^^^^^ メルマガの方向性を考えてたら(おいおい、発行申請する時考えとけよ) 質問メールもらったので、第一回目は、これで行こうかなぁ。。。 /* * 1.メルマガ作者の気持ち? */ メルマガ書いてると、今回みたいに、 掲示板への書き込みや、感想のメールもらえることあります。 (*なかには変なメールもあるけどね) ・反応がなければ、さびしい。 ・ほめられれば、舞い上がる。 ・けなされれば、へこむ。 ^^^^^^^^↑私の場合はもっと来い(笑)かなぁ とにかく、購読者からの反応に一喜一憂してるんだよね。 だからメール下さいね。 なんて、前置きは置いといて、 /* * 2.質問内容 */ うれしい、初質問は、放置されているVBA系のHPを見てのものだけど、 http://plaza14.mbn.or.jp/~ken3/mm/index2.html のExcelからDAOを使用するを見たんだと思う。 In message "質問です", >はじめまして > >VBA上からMDBを生成する方法を探していたら >たどり着けました > >参考にさせて頂いています > >質問が2つほどあるんですけども >MDBを作成する時に、主キー(プライマリーキー)を >設定したいのですが、どうすれば良いんでしょうか? >色々やってみたのですが、ダメでした。。。 >もし知っていたら、ご教授ください。 > >2つ目なんですけど >MDBにはオートナンバー型という型がありますが >これはどういう風に宣言するのでしょう? >これも色々やってみたのですが、出来ませんでした。。 > >以上の2つなのですが >ご存知であれば、ご教授お願いします。 /* * 3.いきなりサンプルじゃぁねぇ、、 */ いきなりサンプルからだと、 何言ってんだよコイツ・・・ 質問者との会話ならメールで1対1でしろ と言われそうだけど、まぁゆるしてよ。。。 Sub Create_test4() 'データベースオブジェクトの宣言 Dim DB As Database Dim TB As TableDef ' Dim IDX As Index Dim strMDBNAME As String '作成ファイル名 strMDBNAME = ThisWorkbook.Path & "\New.mdb" 'ブックのパス+new.mdbとする 'ファイルが既にあるかチェックする If Dir(strMDBNAME) <> "" Then Kill strMDBNAME 'ファイルが存在したら削除する End If 'データベースを新規で作成します Set DB = CreateDatabase(strMDBNAME, dbLangJapanese) 'テーブルを作成します と言ってるけど、 'CreateTableDefメソッドを実行しただけ Set TB = DB.CreateTableDef("メル友") '新しい TableDef オブジェクトを作成します 'そのあと、フィールドを作ろうよ TB.Fields.Append TB.CreateField("ID", dbLong) ''Attributes プロパティにdbAutoIncrField を設定し、自動加算にする TB("ID").Attributes = dbAutoIncrField 'その他付帯項目を作成 TB.Fields.Append TB.CreateField("ニックネーム", dbText, 20) TB.Fields.Append TB.CreateField("E-MAIL", dbText, 30) ' さてと、新しく Index オブジェクトを作成します、 Set IDX = TB.CreateIndex("ID") IDX.Fields.Append IDX.CreateField("ID", dbLong) IDX.Primary = True '.Primaryで主キーになるよ TB.Indexes.Append IDX 'インデックスの追加 '結果を書き込むじゃないけど、 DB.TableDefs.Append TB 'ここで初めて追加だよ、これないと、、、 DB.Close '閉じる MsgBox strMDBNAME & "作成終了" End Sub ポイントは、 >MDBを作成する時に、主キー(プライマリーキー)を >設定したいのですが、どうすれば良いんでしょうか? >色々やってみたのですが、ダメでした。。。 >もし知っていたら、ご教授ください。 ' さてと、新しく Index オブジェクトを作成します、 Set IDX = TB.CreateIndex("ID") IDX.Fields.Append IDX.CreateField("ID", dbLong) IDX.Primary = True '.Primaryで主キーになるよ ^^^^^^^^^^^ インデックスオブジェクトの.Primaryってプロパティかなぁ。 >2つ目なんですけど >MDBにはオートナンバー型という型がありますが >これはどういう風に宣言するのでしょう? >これも色々やってみたのですが、出来ませんでした。。 TB.Fields.Append TB.CreateField("ID", dbLong) ''Attributes プロパティにdbAutoIncrField を設定し、自動加算にする TB("ID").Attributes = dbAutoIncrField ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ これもいろいろと埋まってて、 フィールドの、 .Attributes プロパティに dbAutoIncrField を設定するだけみたいです。 私も探してしまった。。。(笑) こんなんで、参考になりましたか? ならないね。 えっ、なんで? そんな結果をだらだら書くよりも、 オレは、アンタがどうやって?どのようにして?何を使って? インデックスオブジェクトの.Primary .Attributes プロパティ だぁ を調べた調べ方が聞きたいよね。 そうですか。 そうだよ、またわかんなくなった時、調べ方教わってたら自分で調べられるけど、 教えてもらってないんだもん、また何かあったら出来る人に聞いちゃうよ。 そっか・・・ まったく、毎日、XXXXXプロパティの使い方は、、なんて送られても困るんだよ。 話が長くなったので、このへんで今回は切ります。 おぃ、逃げるのか? ・・・・・・ /* * 4.ご教授お願いします は なんかキライ */ >以上の2つなのですが >ご存知であれば、ご教授お願いします。 よく目にするんだけど、 ご教授お願いします って言葉なんかキライなんだよね。 あっ、質問者のマナーって言われると何も言えないんだけど、 私は個人的意見として、嫌いかなぁ。 *深い理由無いんだけど、決り文句?な感じがするのと、 質問者に答えてやってる的な人がなんか好みそうな気がして・・ おっと、あまり気にしないで、感想、質問のメール下さいね。 *質問メールはネタにすると発行がラクなので。 /* * 5.終わりの挨拶 */ で、今日は何が言いたかったの? 初回の挨拶です(笑) はじめに、かましとかないと(うそです) まじめに書くと、 回答だけ載せても、あまり読者のタメにならないのかなぁと思った。 バランスを取りながら 次回も気楽に書いていこうと思います。 何か質問などあったら、掲示板に書いてもらえるとうれしいです 三流プログラマーのKen3でした。
ここまで、読んでいただきどうもです。ここから下は、三流君のホームページの紹介・案内です
目的の情報が見つかったか?少々心配しつつ、、、
気になったジャンル↓を選択してください。 人気記事(来場者が多いTOP3): Excel関係: Access関係: その他:VBAの共通関数やテキストファイルの操作など 開発時の操作: [F1を押してHELPを見る]/ [Debug.Print と イミディエイトウインドウ]/ [実行時エラーでデバッグ]/ [ウォッチ式とSTOP]/ [参照設定を行う] 仕様書(設計書?) XXXX書類: [基本設計書や要求仕様書]/ [テスト仕様書 テストデータ]/ [バグ票]/ [関数仕様書]/ [流れは 入力・処理・出力] ※↑文章の味付けが変わっていて、お口に合うかわかりませんが。。。 |
Blogとリンク:[三流君の作業日記]/
[VBAやASPのサンプルコード]/
広告-[通販人気商品の足跡]