Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


424 / 500 ページ ←次へ | 前へ→

【4704】Re:初心者です・・・フォームからのレコー...
発言  赤兎馬  - 05/3/24(木) 11:47 -

引用なし
パスワード
   お忙しい中、本当にすみません。

>そんなことはないと思います。
>実際、私のところで前述のSQLからサンプルテーブルを作成しましたが
>出来ます。
>
>リレーションとか組んでますか?

今、もう一回、クエリ上で変更をかけてみました。
やはり、版権テーブルからの項目(例えば個別名など)はちゃんと更新されます。
ただし、各ID項目については、レコード保存をする際に、
「インデックス、主キー、またはリレーションシップで値が重複しているので、
テーブルを更新できませんでした。重複する値のあるフィールドの値を変更するか、
インデックスを削除してください」
とのメッセージが出て、保存できませんでした。
これは、リレーションの組み方ですよね?リレーションは、全て?のリレーション
と、クエリのリレーション(デザインビューで出るやつ)の2つありますよね?
あのへんがおかしいのでしょうか?
・ツリー全体表示

【4703】Re:FileDialogでファイル名を取得?
質問  ocha  - 05/3/24(木) 11:35 -

引用なし
パスワード
   回答ありがとうございました。
感動です。

…で、ファイル名だけを(フルパスでなくて)する方法はあるのでしょうか???
・ツリー全体表示

【4702】Re:初心者です・・・フォームからのレコー...
回答  クロ  - 05/3/24(木) 11:02 -

引用なし
パスワード
   >基本的なことをお聞きしたいのですが・・・
>そもそも、このような場合、版権テーブルの内容を修正したりした場合で、
>各テーブルの値を参照しているような場合は、このようなテーブル設計では
>うまく行かないのでしょうか?

そんなことはないと思います。
実際、私のところで前述のSQLからサンプルテーブルを作成しましたが
出来ます。

リレーションとか組んでますか?
・ツリー全体表示

【4701】Re:住所入力支援・ふりがな機能について
回答  クロ  - 05/3/24(木) 10:59 -

引用なし
パスワード
   >クエリのデータシートビューでレコードの追加・変更は
>可能ですが、ふりがな機能は機能しておりません。
>クエリーの作り方に何か問題があるのでしょうか?

クエリのSQL文を提示していただいてみれば少しは見えてくるかもしれませんが...
・ツリー全体表示

【4700】Re:初心者です・・・フォームからのレコー...
発言  赤兎馬  - 05/3/24(木) 10:58 -

引用なし
パスワード
   いつもありがとうございます。

>版権テーブル上の各IDを変更することでモチーフなどの名称を変えるために
>はクエリのフィールドに版権テーブルから各IDを入れば出来ます。
>このときモチーフ名を変えるのでなくモチーフIDを変更すれば自動的にモチ
>ーフ名が変更になると思います。
>クエリ上で試してみてください。

ん〜、ということは、クエリのフィールドに各ID項目を追加する、
ということでしょうか?
一応、クエリに各ID項目を追加してみて、クエリ上で各ID項目に修正を
かけてみたのですが、やっぱり「変更できません」になります。

基本的なことをお聞きしたいのですが・・・
そもそも、このような場合、版権テーブルの内容を修正したりした場合で、
各テーブルの値を参照しているような場合は、このようなテーブル設計では
うまく行かないのでしょうか?
単純に、モチーフやメーカーなどはテーブルにして、実際に表示や変更等の場合
(フォーム上)、各テーブルを参照して、モチーフ名やメーカー名を出したい、
とか、登録したい・・・という感じなんですけど・・・。
誰にも聞く人がいないので、本のサンプルをごちゃごちゃ変更して作成してしまった
ので、もしかしたら、テーブルの持たせ方自体、最初からおかしかった・・・
のではないのかと、思いはじめました。
・ツリー全体表示

【4699】Re:住所入力支援・ふりがな機能について
質問  pinetree  - 05/3/24(木) 10:47 -

引用なし
パスワード
   ▼クロ さん:
>そのクエリは更新可能なクエリですか?
>※クエリをデータシートビューにしてレコードを追加
> 編集(変更)できるか確認してください。
>
>当方(Win2000/sp4-Ac2002/sp3)では、特に問題ないのですが...
>バージョンの違いによるものかな?

クエリのデータシートビューでレコードの追加・変更は
可能ですが、ふりがな機能は機能しておりません。
クエリーの作り方に何か問題があるのでしょうか?
・ツリー全体表示

【4698】Re:初心者です・・・フォームからのレコー...
回答  クロ  - 05/3/24(木) 10:20 -

引用なし
パスワード
   > ⇒ そうなんです・・・
>  各テーブルが変更されちゃうとまずくって、版権テーブルの内容を
>  のみを修正したいのです。
>  ん?
>  そうすると、上記で書くテーブルを更新可能にしたのはちがうのかな?

う〜ん、版権テーブルでは他の各IDしか値をもっていませんよね?
ということは前述のクエリ(SQL文)では版権テーブルのIDを変更する仕様に
なっていません。

版権テーブル上の各IDを変更することでモチーフなどの名称を変えるために
はクエリのフィールドに版権テーブルから各IDを入れば出来ます。
このときモチーフ名を変えるのでなくモチーフIDを変更すれば自動的にモチ
ーフ名が変更になると思います。
クエリ上で試してみてください。
・ツリー全体表示

【4697】Re:クロス集計
お礼  にしもり  - 05/3/24(木) 10:12 -

引用なし
パスワード
   ▼クロ さん:
>PIVOT テーブル.品目 In ("fruit","sugar","others");
できました。
ありがとうございました!
・ツリー全体表示

【4696】Re:初心者です・・・フォームからのレコー...
発言  赤兎馬  - 05/3/24(木) 9:46 -

引用なし
パスワード
   おはようございます。いつも、ありがとうございます。

▼クロ さん:
>各テーブルの**IDに主キーを設定します。
>5テーブルに鍵マークがつきましたか?

⇒ 最初から鍵マークがついてました・・・。
  でも、これで、更新可能なんですね。

>これで一応更新可能なクエリになると思います。
>
>ただし、このクエリで「モチーフ」を変更したとします。
>この場合変更されるのは「モチーフテーブル」の「モチーフ」が変更
>されますが、これはこれでいいのでしょうか?

⇒ そうなんです・・・
  各テーブルが変更されちゃうとまずくって、版権テーブルの内容を
  のみを修正したいのです。
  ん?
  そうすると、上記で書くテーブルを更新可能にしたのはちがうのかな?
・ツリー全体表示

【4695】フォームのボタンクリックでリンク先のフ...
質問  tamarin  - 05/3/23(水) 21:47 -

引用なし
パスワード
   初心者です。
フォームの中にネットワーク先のフォルダーを開けるボタンを
挿入したいのですが。
・ツリー全体表示

【4694】Re:クロス集計
回答  クロ  - 05/3/23(水) 17:57 -

引用なし
パスワード
   TRANSFORM Sum(テーブル.実施回数) AS 実施回数の合計
SELECT テーブル.支店名, テーブル.課名, Sum(テーブル.実施回数) AS [合計 実施回数]
FROM テーブル
GROUP BY テーブル.支店名, テーブル.課名
PIVOT テーブル.品目 In ("fruit","sugar","others");
ではどうでしょうか?
・ツリー全体表示

【4693】Re:FileDialogでファイル名を取得?
回答  クロ  - 05/3/23(水) 17:49 -

引用なし
パスワード
   http://www.geocities.jp/xmldtp/ac_FileDialog.htm
が参考になりますか?
・ツリー全体表示

【4692】クロス集計
質問  にしもり  - 05/3/23(水) 17:44 -

引用なし
パスワード
   こんにちは。
VBAの質問といえないかもしれませんがどなたか教えてください。
あるテーブルを下記のようにクロス集計しています。

TRANSFORM Sum(テーブル.実施回数) AS 実施回数の合計
SELECT テーブル.支店名, デーブル.課名, Sum(テーブル.実施回数) AS [合計 実施回数]
FROM デーブル
GROUP BY テーブル.支店名, テーブル.課名
PIVOT テーブル.品目;

このとき品目にはfruit,sugar,othersの3種があります。
ピボット結果はどうしても順が、左からfruit,others,sugarになってしまいます。
これを左からfruit,sugar,othersにする効率的な方法はありますか?
・ツリー全体表示

【4691】FileDialogでファイル名を取得?
質問  ocha  - 05/3/23(水) 17:35 -

引用なし
パスワード
   よくあるファイルの選択からファイル名(パスではなくファイル名)を取得しようと思い、ヘルプのコードを実行しようとしたのですが、
「ユーザー定義型は定義されていません」メッセージが出てしまいます。
Dim fd As FileDialog
と宣言する前になにか準備が必要なのですか?
また、選択させたファイル名を取得する方法として一般的なものがあれば教えてください。よろしくおねがいします。
・ツリー全体表示

【4690】Re:初心者です・・・フォームからのレコー...
回答  クロ  - 05/3/23(水) 17:33 -

引用なし
パスワード
   各テーブルの**IDに主キーを設定します。
各テーブルをデザインで開いて以下の**IDにポインタ(カーソル)を
置いてツールバーの鍵マークをクリックしてください。
フィールド名の左のグレー部分に鍵マークつけばOKです。

版権テーブルの個別ID
メーカーテーブルのメーカーID
モチーフテーブルのモチーフID
種別テーブルの種別ID
販売台数テーブルの販売台数ID
以上の5テーブルに鍵マークがつきましたか?

これで一応更新可能なクエリになると思います。

ただし、このクエリで「モチーフ」を変更したとします。
この場合変更されるのは「モチーフテーブル」の「モチーフ」が変更
されますが、これはこれでいいのでしょうか?

見た感じレコードが可変していいテーブルは「版権テーブル」だけで
他のテーブルはマスタみたいな感じがするのですが...
版権テーブルの「モチーフID」を変更したことで「モチーフ」が可変
するような感じでないとマズイのではないでしょうか?

現在使用しているmdbファイル(アクセスの書類)を1つコピーしてバックアップして
から行って下さい。※実際のレコード破損防止のため
・ツリー全体表示

【4689】Re:初心者です・・・フォームからのレコー...
発言  赤兎馬  - 05/3/23(水) 16:55 -

引用なし
パスワード
   >この件はまず、更新可能なクエリにしてから行いましょう。
>
>ではクエリを開いてください。
>この状態でメニュー>表示>SQLビューにして下さい。
>SELECT...というような文字が出てきますので、コピペしてこちらに貼ってください。
>※個人情報に関わるものはクエリでは出てこないと思いますので大丈夫だと思いますが
> テーブル名など気になるようでしたら変更(コピペ後)して下さって結構です。
>
>たぶん2つ以上のテーブルを結合線で繋がれていると思います。

SELECT [版権テーブル].[個別ID], [メーカー名修正用クエリ].[メーカー名], [モチーフテーブル].[モチーフ], [版権テーブル].[件名], [版権テーブル].[件名(カナ)], [種別テーブル].[種別], [版権テーブル].[個別名], [版権テーブル].[発売時期], [版権テーブル].[販売台数], [版権テーブル].[備考], [メーカーテーブル].[メーカーID], [メーカーテーブル].[メーカーID]
FROM 販売台数テーブル INNER JOIN (メーカーテーブル INNER JOIN (((版権テーブル INNER JOIN モチーフテーブル ON [版権テーブル].[モチーフID]=[モチーフテーブル].[モチーフID]) INNER JOIN 種別テーブル ON [版権テーブル].[種別ID]=[種別テーブル].[種別ID]) INNER JOIN メーカー名修正用クエリ ON [版権テーブル].[個別ID]=[メーカー名修正用クエリ].[個別ID]) ON [メーカーテーブル].[メーカーID]=[版権テーブル].[メーカーID]) ON [販売台数テーブル].[販売台数ID]=[版権テーブル].[販売台数ID]
WHERE ((([版権テーブル].[個別ID])=[forms]![修正フォーム]![個別ID]))


全然意味がわかりません・・・。ごめんなさい・・・。
・ツリー全体表示

【4688】Re:初心者です・・・フォームからのレコー...
回答  クロ  - 05/3/23(水) 16:39 -

引用なし
パスワード
   >⇒更新は出来ませんでした。やはり先ほどと同じように、更新できませんという
> ことですした。

了解です。たぶんプロパティの方は、通常でフォーム作成すると
「更新の許可」は「はい」になっているので問題ないと思います。

>>stLinkCriteriaの値(Bフォーム開くときの条件)が何処にも書いてないのですが...
>⇒条件書かなくちゃいけないんですか?

この件はまず、更新可能なクエリにしてから行いましょう。

ではクエリを開いてください。
この状態でメニュー>表示>SQLビューにして下さい。
SELECT...というような文字が出てきますので、コピペしてこちらに貼ってください。
※個人情報に関わるものはクエリでは出てこないと思いますので大丈夫だと思いますが
 テーブル名など気になるようでしたら変更(コピペ後)して下さって結構です。

たぶん2つ以上のテーブルを結合線で繋がれていると思います。
・ツリー全体表示

【4687】Re:初心者です・・・フォームからのレコー...
発言  赤兎馬  - 05/3/23(水) 16:27 -

引用なし
パスワード
   はぁぁ、全然わかりません。ごめんなさい。

▼クロ さん:
>>⇒クエリですが、更新可能は何処で確かめればよいでしょうか?
>
>クエリをデータシートビューで開き編集できるか確かめます。
>また、新規にレコードが入力できるか確かめます。
>結果を報告してください。

⇒更新は出来ませんでした。やはり先ほどと同じように、更新できませんという
 ことですした。

>
>>⇒すみません、プロパティの何処を参照すれば確認できますでしょうか?
>
>Bフォームをデザインビューで開き、F4キーを押下すると現れます。
>データタブのところにあります。

⇒F4を押したのですが、何も・・・なんです。

>
>>本当に悲しいほど初心者なのに、担当になってしまいました・・・。
>>周りに誰も聞く人がいなくて、参考書のみようみまねです。
>
>先程のコードは省略してますよね?
>stLinkCriteriaの値(Bフォーム開くときの条件)が何処にも書いてないのですが...

⇒条件書かなくちゃいけないんですか?

ってか、こんな私で、できるのでしょうか?不安。

すみません。
・ツリー全体表示

【4686】Re:初心者です・・・フォームからのレコー...
発言  クロ  - 05/3/23(水) 16:18 -

引用なし
パスワード
   >⇒クエリですが、更新可能は何処で確かめればよいでしょうか?

クエリをデータシートビューで開き編集できるか確かめます。
また、新規にレコードが入力できるか確かめます。
結果を報告してください。

>⇒すみません、プロパティの何処を参照すれば確認できますでしょうか?

Bフォームをデザインビューで開き、F4キーを押下すると現れます。
データタブのところにあります。

>本当に悲しいほど初心者なのに、担当になってしまいました・・・。
>周りに誰も聞く人がいなくて、参考書のみようみまねです。

先程のコードは省略してますよね?
stLinkCriteriaの値(Bフォーム開くときの条件)が何処にも書いてないのですが...
・ツリー全体表示

【4685】Re:初心者です・・・フォームからのレコー...
発言  赤兎馬  - 05/3/23(水) 16:11 -

引用なし
パスワード
   早速のご回答、ありがとうございます。
本当・・・に初心者なので、もう一度ご説明ください・・・。
申し訳ございません。

▼クロ さん:
>Bフォームのレコードソースはテーブルですか?クエリですか?
>クエリなら更新可能なクエリか否か?

⇒クエリですが、更新可能は何処で確かめればよいでしょうか?

>
>Bフォームプロパティの「更新の許可」はどうなってますか?

⇒すみません、プロパティの何処を参照すれば確認できますでしょうか?

本当に悲しいほど初心者なのに、担当になってしまいました・・・。
周りに誰も聞く人がいなくて、参考書のみようみまねです。
すみませんが、よろしくお願い申し上げます。
・ツリー全体表示

424 / 500 ページ ←次へ | 前へ→
ページ:  ┃  記事番号:
1084743
(SS)C-BOARD v3.8 is Free