5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

ACCESS総合相談所 その12

1 :名無しさん@そうだ選挙にいこう:05/01/29 10:43:58
質問される方へ
・OS、ACCESSのバージョンを明記してください
・質問内容は具体的に書いてください
 テーブル/フォームの構成、クエリ、VBAの内容など差し支えない
 範囲で詳しく書くと、早く回答が得られるかもしれません
 (聞き返さなくても詳細が把握できる質問が望ましいです)
・事前にヘルプ等で調べられる範囲は調べてください
・下記テンプレートの使用を推奨します。

---------- ここから ----------
【.  目 的  】 (何がしたいのか必ず記入。)
【.  条 件  】 (使用OS、ACCESSのバージョン など)
■試したけどうまくいかなかった処理
【. 概  要  】 (どんな処理を試したかを説明)
【駄目な理由】 (動作状況など)
■これだけはやりました
>>1を読んだ】 はい・いいえ (読まない人が多いので必ず目を通してください)
【Googleで調べた】 はい・いいえ (大概の疑問は検索することで解決します)
【検索キーワードは?】 (全て列挙してください)
---------- ここまで ----------

前スレッド - ACCESS総合相談所 その11
http://pc5.2ch.net/test/read.cgi/bsoft/1089812359/
過去スレッド/関連リンクは>>2以降

2 :名無しさん@そうだ選挙にいこう:05/01/29 10:52:31
2だぜ

3 :名無しさん@そうだ選挙にいこう:05/01/29 15:22:31
・歴代スレッド
- html化済み & 未対応 & 消息不明 -
ACCESS2000総合相談所
http://pc.2ch.net/bsoft/kako/965/965614164.html
ACCESS総合相談所 その2
http://pc.2ch.net/bsoft/kako/1007/10079/1007987001.html
ACCESS総合相談所 その3
http://pc.2ch.net/bsoft/kako/1019/10190/1019087338.html
ACCESS総合相談所 その4
http://pc.2ch.net/bsoft/kako/1027/10274/1027491281.html
ACCESS総合相談所 その5
http://pc.2ch.net/bsoft/kako/1033/10331/1033182163.html
ACCESS総合相談所 その6
http://pc2.2ch.net/bsoft/kako/1037/10378/1037856185.html
ACCESS総合相談所 その7
http://pc2.2ch.net/bsoft/kako/1043/10439/1043996834.html
ACCESS総合相談所 その8(消息不明です)
http://pc2.2ch.net/bsoft/kako/1051/10516/1051630268.html
ACCESS総合相談所 その9(消息不明です)
http://pc2.2ch.net/test/read.cgi/bsoft/1061828549
前スレッド - ACCESS総合相談所 その10
http://pc5.2ch.net/test/read.cgi/bsoft/1075378966/

4 :名無しさん@そうだ選挙にいこう :05/01/31 20:33:51
05/01/29 15:22:31 から無いの。寂しい。
所で質問です。

前任者が作ったものなんですが。
フォームとレポートでデザイン及び新規作成が出来ないように
設定されているのですが、どうしたら可能になるのでしょうか、教えて下さい。
パージョンは2000です。

5 :名無しさん@そうだ選挙にいこう:05/02/01 00:23:47
新規mdbにテーブルとクエリだけ吸い出せば、フォームレポートともに新規作成
できるけど、たぶんそういうことじゃないんだろうな。

すでにそこにあるフォームやレポートの裏側を覗いたり触ったりなんかもしたい、
ってことだとしたら、きっと無理

6 :名無しさん@そうだ選挙にいこう:05/02/01 02:28:45
そうですか、ありがとうございました。

いや、別にただ単にレポートの修正をしたかっただけなんですけど
で フォームもデザイン及び新規作成が出来ないように
設定(なんと表現するんですか → クリック出来ない状態)
テーブルとクエリは出来るのです。


7 :名無しさん@そうだ選挙にいこう:05/02/01 03:49:01
>>6

ACCESSのセキュリティー使ったことで解らないですが、
ユーザー権限が設定されているという可能性はありませんか?

8 :名無しさん@そうだ選挙にいこう:05/02/01 06:25:08
>>7
6です。 ありがとうございます。

今日 会社へ行った時、調べてみます。


9 :名無しさん@そうだ選挙にいこう :05/02/01 09:19:34
>>6
もしかしてmde形式のファイルにでは?
拡張子はmdbでも中身はmdeというのは結構あります。
mdeファイルの拡張子を単にmdbに変更しても正常に動かせるので
ユーザーに配布する際によく使います。
Opendatabaseで「Properties("MDE")」を見ればどちらの形式か分かります。



10 :RAID小僧:05/02/01 18:38:19
********************************
サーバーOS環境 : Windows 2000 Server
データベース環境 :  SQL Server 2000
********************************
クライアントOS環境 : Windows2000
クライアントIF環境 : Access2002(XP) で作成したADPファイル
********************************

上記で何の問題なく稼動していたAccess2002 と SQLServer2000 でのC/Sシステムがあります。
ところが、クライアントのOSを WindowsXP に変更し、システムを起動し、数分ほっておくとSQLServer と Access2002 との間の接続が切れてしまう症状に困っています。
再度、ログオンか再起動をしないと再接続しません。
どなたか、解決方法をご存知ありませんか?

何卒よろしくお願い致します。

11 :名無しさん@そうだ選挙にいこう:05/02/01 20:48:42
>>9 6です。
いろいろありがとうございます。

今 帰りました。
感謝します。


12 :名無しさん@そうだ選挙にいこう:05/02/01 23:36:02
OS : Windows2000
Access : Access2000
SQLの記述について。

成績管理をしています。生徒ID、氏名、科目ID、点数をまとめたいのですが、SQLでどのように書けばいいのでしょうか?

生徒マスター
ID
Name

科目マスター
ID
Name

テストデータ
ID
SeitoID
KamokuID1
Tensuu1
KamokuID2
Tensuu2
KamokuID3
Tensuu3

上記テーブルから
生徒名 科目名1 点数1 科目名2 点数2 科目名3 点数3
とならぶデータの一覧を作成したいのですが、
生徒名は表示できました。ただ、科目名と点数のところがどうしたらいいのかわかりません。

丸投げのような形で申し訳ありませんが、よろしくお願いします。

13 :名無しさん@そうだ選挙にいこう:05/02/02 00:22:23
生徒マスター
SeitoID
SeitoNM (Nameというフィールド名は避けたほうが)

科目マスター
KamokuID
KamokuNM

テストの種類マスター(たぶん何年何学期末とか中間とかを表すような)
TestID
TestNM

テストデータ
TestID
SeitoID
KamokuID
Tensu

データはこんなふうにためといたほうがいろんな意味で得じゃないかなと

>>生徒名 科目名1 点数1 科目名2 点数2 科目名3 点数3
>>とならぶデータの一覧を作成したいのですが

についてはまあ次回ってことで

14 :12:05/02/02 00:36:36
>>13
ありがとうございます。
テーブルを変更したいのですが、私個人にその権限がありません。
申し訳ありません。

苦肉の策で、
Select Dlookup("Name","科目マスター","ID=" & テストデータ.KamokuID1) as 科目名1 from 以下略
とやってみたのですが、この使い方をすると処理速度は加速度的に遅くなりますよね。

実は科目が7つとか9つとかあるんですよ_| ̄|○


15 :名無しさん@そうだ選挙にいこう:05/02/02 01:11:35
何か、やろうとしていることの内容が変に思えてきた

山田 英語 20 数学 80 国語 70
鈴木 英語 55 数学 60 国語 45
佐藤 英語 80 数学 60 国語 30

こういう表をつくりたいのかな?

↓みたいのではダメなの?(つかこれが普通だと思うんだけど)

/////英語 数学 国語
山田 20 80 70
鈴木 55 60 45
佐藤 80 60 30

どっちにしろ、出来ないことはないんだけど

16 :12:05/02/02 02:04:19
>>15
はい、ズバリその表を作りたいのです。
1人1行で科目と点数が並んでいる表ですね。
おかしいとか見難いとか、そういう意見が通るものでもないのです(T_T)

17 :15:05/02/02 02:13:17
>>16
どうせ今晩は徹夜になりそうなんで、合間みてやってあげる

ところで↓、気が向いたら誰か教えてください

たとえば、フォームF_0からフォームF_1を開き、F_1上のラベルキャプションを
F_0のラベルキャプションから取る場合だったら、

docmd.openform "F_1"
forms!F_1!labelhoge.caption=me!labelhoge.caption
でいけますよね。

これ、レポートの場合はどういうタイミングで書けばいいんでしょう
たとえば
レポートヘッダに貼り付けたラベルのキャプションを、すぐ下に開いている
フォーム上のラベルキャプションから取るには

18 :名無しさん@そうだ選挙にいこう:05/02/02 03:35:47
KamokuID1には必ず1が、KamokuID2には必ず2が入るってことなら↓

SELECT 生徒マスター.Name, Q1.Name, テストデータ.Tensu1, Q2.Name, テストデータ.Tensu2, Q3.Name,
テストデータ.Tensu3, Q4.Name, テストデータ.Tensu4, Q5.Name, テストデータ.Tensu5, Q6.Name,
テストデータ.Tensu6, Q7.Name, テストデータ.Tensu7, Q8.Name, テストデータ.Tensu8, Q9.Name,
テストデータ.Tensu9, Q10.Name, テストデータ.Tensu10
FROM ((((((((((テストデータ LEFT JOIN [SELECT ID, Name FROM 科目マスター WHERE ID=1]. AS Q1 ON
テストデータ.KamokuID1 = Q1.ID) LEFT JOIN [SELECT ID, Name FROM 科目マスター WHERE ID=2]. AS
Q2 ON テストデータ.KamokuID2 = Q2.ID) LEFT JOIN [SELECT ID, Name FROM 科目マスター WHERE ID=3]. AS Q3
ON テストデータ.KamokuID3 = Q3.ID) LEFT JOIN [SELECT ID, Name FROM 科目マスター WHERE ID=4]. AS Q4
ON テストデータ.KamokuID4 = Q4.ID) LEFT JOIN [SELECT ID, Name FROM 科目マスター WHERE ID=5]. AS Q5
ON テストデータ.KamokuID5 = Q5.ID) LEFT JOIN [SELECT ID, Name FROM 科目マスター WHERE ID=6]. AS Q6
ON テストデータ.KamokuID6 = Q6.ID) LEFT JOIN [SELECT ID, Name FROM 科目マスター WHERE ID=7]. AS Q7
ON テストデータ.KamokuID7 = Q7.ID) LEFT JOIN [SELECT ID, Name FROM 科目マスター WHERE ID=8]. AS Q8
ON テストデータ.KamokuID8 = Q8.ID) LEFT JOIN [SELECT ID, Name FROM 科目マスター WHERE ID=9]. AS Q9
ON テストデータ.KamokuID9 = Q9.ID) LEFT JOIN [SELECT ID, Name FROM 科目マスター WHERE ID=10]. AS Q10
ON テストデータ.KamokuID10 = Q10.ID) INNER JOIN 生徒マスター ON テストデータ.SeitoID = 生徒マスター.ID;

19 :名無しさん@そうだ選挙にいこう:05/02/02 03:36:26
KamokuID1だからといって、3が入ったらいけないわけでもなく、KamokuID2だからといって7が入ったらいけないというわけでもないなら↓

SELECT 生徒マスター.Name, 科目マスター.Name, テストデータ.Tensu1, 科目マスター_1.Name,
テストデータ.Tensu2, 科目マスター_2.Name, テストデータ.Tensu3, 科目マスター_3.Name,
テストデータ.Tensu4, 科目マスター_4.Name, テストデータ.Tensu5, 科目マスター_5.Name,
テストデータ.Tensu6, 科目マスター_6.Name, テストデータ.Tensu7, 科目マスター_7.Name,
テストデータ.Tensu8, 科目マスター_8.Name, テストデータ.Tensu9, 科目マスター_9.Name,
テストデータ.Tensu10
FROM (((((((((科目マスター RIGHT JOIN (テストデータ INNER JOIN 生徒マスター ON
テストデータ.ID = 生徒マスター.ID) ON 科目マスター.ID = テストデータ.KamokuID1) LEFT JOIN
科目マスター AS 科目マスター_1 ON テストデータ.KamokuID2 = 科目マスター_1.ID) LEFT JOIN
科目マスター AS 科目マスター_2 ON テストデータ.KamokuID3 = 科目マスター_2.ID) LEFT JOIN
科目マスター AS 科目マスター_3 ON テストデータ.KamokuID4 = 科目マスター_3.ID) LEFT JOIN
科目マスター AS 科目マスター_4 ON テストデータ.KamokuID5 = 科目マスター_4.ID) LEFT JOIN
科目マスター AS 科目マスター_5 ON テストデータ.KamokuID6 = 科目マスター_5.ID) LEFT JOIN
科目マスター AS 科目マスター_6 ON テストデータ.KamokuID7 = 科目マスター_6.ID) LEFT JOIN
科目マスター AS 科目マスター_7 ON テストデータ.KamokuID8 = 科目マスター_7.ID) LEFT JOIN
科目マスター AS 科目マスター_8 ON テストデータ.KamokuID9 = 科目マスター_8.ID) LEFT JOIN
科目マスター AS 科目マスター_9 ON テストデータ.KamokuID10 = 科目マスター_9.ID;

20 :12:05/02/02 06:28:34
>>19
ありがとうございました!
Right Join と Left Join の使い方が肝心だったんですね。
実のところ、矢印をあっちに変えこっちに変え、色々試していたのです。
しっかり理解するよう、これからも精進します。

21 :名無しさん@そうだ選挙にいこう:05/02/03 04:51:04
OS : Windows XP HOME
Access : Access2003
SQLの記述についての質問です

ビルドで作った項目を、集計関数で最大値を求めたいのですが
構文エラーばかり出てしまいます
(売り上げ合計値が最高値のものを、商品別に求めるという問題をしています。)

まず、ビルドで
商品台帳!価格*売上台帳!販売個数 AS 売り上げ合計値
を作りました。これの最大値(MAX)を求めたいのです。

最初はMAX(商品台帳!価格*売上台帳!販売個数 AS 売り上げ合計)
かと考えていたのですが・・・どうにも前に進めません。
もしよろしければ、ご指導お願いします。

22 :名無しさん@そうだ選挙にいこう:05/02/03 09:21:50
Accessてファイルサイズ1Gまでじゃないですか。毎日レコード追加してくと、すぐその大きさになるわけですけど、これて皆さんどうしてるんですか?

23 :名無しさん@そうだ選挙にいこう :05/02/03 10:41:34
>>21
SELECT 商品コード, 商品名, MAX([価格]*[販売個数]) AS 売上額最大
FROM 商品台帳
GROUP BY 商品コード, 商品名

>>22
SQL Serverに移行する


24 :名無しさん@そうだ選挙にいこう:05/02/03 16:22:37
レコードセットやコネクションなんかで使い終わったらcloseしますが、
1つのプロシージャ内で何度も開け閉めするようなコードでなく
開く→編集→保存
で完結するような場合、closeしなかったら何か不都合はあるんでしょうか?

いろいろ見て回ったのですが、closeする理由として、
closeしないと気持ち悪いっていうのが多かったので・・・。

めんどくさがらず閉じろって言われればそれまでなんですがw

レコードセットはcloseしますが、コネクションは
閉じたり閉じなかったりすることが多いです。

みなさんはちゃんと閉じてますか?

25 :名無しさん@そうだ選挙にいこう:05/02/03 18:09:44
22>>23
いや、SQLサーバーでも同じ話じゃないですか、、、
少しずつテキストファイルかなんかにバックアップしていくって感じ
でしょうか?何か便利な方法あります?



26 :名無しさん@そうだ選挙にいこう:05/02/04 10:51:40
>>24
やっぱり何らかの形でリソースを無駄遣いするんじゃないか?
接続先が最大接続数を制限している場合もあるし。
大きなシステムではなくて、わかってやってるんだったら
少々閉じなくても大丈夫だと思うけど

個人的には、openしたらcloseするのは
for〜nextとかfunction〜end functionなんかと同じ感覚だなあ

27 :名無しさん@そうだ選挙にいこう:05/02/04 11:49:01
Access2000のレポートについて教えてください。

テーブルAをレコードソースにしてレポートを開きました。
テキストボックスにテーブルAのあるフィールド(コード)をキーに
テーブルB(名前とコード)の名前を表示させたいのですが
どうすればよいでしょうか。

テキストボックスは2箇所あり、それぞれコードを持っていて
テーブルBの名前を表示させたいのです。

28 :名無しさん@そうだ選挙にいこう:05/02/04 12:04:54
新しくクエリ作ってそれをレコードソースにすればいんじゃね?
もしくはサブレポート作ればいいんじゃね?そゆ意味じゃなくて?VBA使って?

29 :名無しさん@そうだ選挙にいこう:05/02/04 12:29:53
慣れてないものですみません。

>>28
>新しくクエリ作ってそれをレコードソースにすればいんじゃね?
テキストボックスのコントロールソースではなく、レコードソースでしょうか。

テキストボックスのコントロールソースに以下の文を書くと
[サブクエリの指定が不正です。
サブクエリはカッコで囲んで指定してください。]
と表示されます。

=SELECT 名前 FROM テーブルB WHERE コード=テーブルAのコード;


>もしくはサブレポート作ればいいんじゃね?
サブレポートを調べてみます。

30 :名無しさん@そうだ選挙にいこう:05/02/04 13:07:11
Access2003ですが
データベースにかけたパスワードを思い出すソフトが
以前こちらで紹介されていたと思うのですが
何度ググっても出てきません。うう・・なんでだろう??

シェアウェアのAdvanced Access Password Recovery以外で
何だったでしょうか??

31 :名無しさん@そうだ選挙にいこう:05/02/04 13:28:06
ttp://www.acchi.cc/soft/ouv/index.html
これとか?
でも2003じゃ使えるのかな?

32 :名無しさん@そうだ選挙にいこう:05/02/04 13:29:21
これはVBAだた。ごめん。

33 :名無しさん@そうだ選挙にいこう:05/02/04 13:57:05
>31 サンクス、
VBAだそうだけどこれはこれでもらっときます。

引き続き、Accessのほうもお願いします
データベース開けなくて仕事が滞ってしまって。。。orz




34 :名無しさん@そうだ選挙にいこう:05/02/04 23:16:11
>>27

コンボボックスじゃダメなの?

35 :名無しさん@そうだ選挙にいこう:05/02/05 10:10:05
次のようなテーブルがあります

1 東京
2 千葉
3 山形
4 東京
5 広島
6 東京
7 山形
8 千葉
9 千葉
10 東京

上記テーブルの回数の多いもの順に、コンボボックスで
選択出来るようにしたいのですが、どんな技を使えば
良いでしょうか?

コンボで表示例
東京
千葉
山形
広島

お願いします。


36 :名無しさん@そうだ選挙にいこう:05/02/05 10:42:44
SELECT 都道府県名
FROM 次のようなテーブル
GROUP BY 都道府県名
ORDER BY count(*) desc

37 :名無しさん@そうだ選挙にいこう:05/02/05 10:43:51
回数て何の回数?テーブルに回数持たせるフィールド追加して、その順番に
並べるようにすればいいだけじゃないの?

38 :名無しさん@そうだ選挙にいこう:05/02/05 10:44:00
>>35
ルックアップの値集合ソースを

SELECT テーブル名.県名
FROM テーブル名
GROUP BY テーブル名.県名
ORDER BY Count(テーブル名.県名) DESC;

にしちゃえばいいんでね?

39 :37:05/02/05 10:45:07
あぁ>>36さんの見てわかた。すまん

40 :35:05/02/05 10:57:49
35です
36-39サンありがと!感謝します。

41 :名無しさん@そうだ選挙にいこう:05/02/09 00:10:40
画像がいっぱい放り込まれているフォルダがあるとして、
その画像ファイルの属性をテーブルに取り込むにはどうしたらいいんでしょう

C:\MyFiles\ひろみ.jpg 324166byte 2005/01/31
C:\MyFiles\あすか.jpg 354098byte 2004/12/02
C:\MyFiles\みちる.jpg 324166byte 2005/02/10
・・・

テーブルに取り込む方法というより、何というか、データ取得の手順です。
ファイルの命名や作成日時に何か規則性があるわけでもないし。

たとえばテーブル中のデータだったら、まずMoveFirstしてデータ取りながらMoveNextして
EOFまでいけばいいわけですけど、ファルダにただごちゃっと放り込まれたファイルってのは、
どういう順番で事を進めていいのかすらわかりません。

42 :41:05/02/09 00:32:03
すみません
質問はなかったことにしてください
ほぼ自己解決(たぶん)
以下のWSHでどうにかいけそうです

Dim folderPath, fs, fl, fc, sf
On Error Resume Next
folderPath = "フォルダパス"
Set fs = CreateObject("scripting.FileSystemObject")
Set fl = fs.GetFolder(folderPath)
Set fc = fl.SubFolders
For Each sf In fc
属性いろいろ
Next

43 :名無しさん@そうだ選挙にいこう:05/02/09 04:31:12
こんな、97と2003など、バージョンが違えばまったく使い物にならなくなる糞DBソフトは
肥溜めにでも投げ捨ててしまいたいのですが、もっとマシなDBソフトはありませんか?

44 :名無しさん@そうだ選挙にいこう:05/02/09 10:11:15
>>43
いっぱいある

45 :名無しさん@そうだ選挙にいこう:05/02/09 10:21:29
>>43
いっぱいある。

46 :名無しさん@そうだ選挙にいこう:05/02/10 11:31:55
>>35から>>40あたりを参考にして、私なりに使ってみようと試したのですが、
出来ませんでしたが、方法はありそうなので質問させてください。

T_顧客マスタに、A商事、B商事・・・J商事まで、10社登録してあるとします。
T_注文データより、注文回数の多い会社をコンボの上位に表示させようと思いま
したが、35〜40を参考に作成すると、注文が1回も無い会社が表示されません
(あたり前ですが)

それを、注文回数の多い会社順に並べ、その下に注文0回の会社を並べたい場合
どうすればよろしいでしょう?

47 :38:05/02/10 12:33:06
いきなり顧客に話が変わってるけど面倒だから県名のままで。

SELECT 県名マスタ.県名
FROM 次のようなテーブル RIGHT JOIN 県名マスタ ON 次のようなテーブル.県名 = 県名マスタ.県名
GROUP BY 県名マスタ.県名
ORDER BY Count(テーブル名.県名) DESC;

これでいけるんじゃないかな。
次のようなテーブルのフィールドは県名じゃなくても良いんだけど

県名マスタ.県名   次のようなテーブル.県名
イバァァァラギィィィ     イバァァァラギィィィ
愛知           愛知
大阪           大阪
大阪           大阪
名古屋         (Null)
青森           (Null)
新潟           (Null)

みたいなテーブルにして次のようなテーブルの方をカウントすれば出てない県名は0になる。

48 :名無しさん@そうだ選挙にいこう:05/02/10 13:39:32
住所入力支援の住所ってバージョンアップできないんですか?
市町村合併とかで古い住所が出てくるんですが・・・。


49 :名無しさん@そうだ選挙にいこう:05/02/10 16:49:15
>>48

http://www.microsoft.com/downloads/details.aspx?FamilyID=45192822-fba7-49e6-b220-09bb32250eb3&displaylang=ja

これだろ。

50 :名無しさん@そうだ選挙にいこう:05/02/10 17:10:01
こんにちわ

固定長のテキストデータで作られた受注データを取り込みたいのですが
テキストデータがマルチレイアウト?になってまして・・・・

イメージとしては下のようなテキストデータになってます。
FHhogehoge
Hhogehoge
Bhogehoge
Bhogehoge
Thogehoge
H
B
B
B
T
以下続く

H・B・Tの構成で1枚の伝票のデータになっているのですが
それぞれ、レイアウトが異なってます。

これをうまく取り込んで1枚の伝票としてテーブルで管理したいのです

OS:WinXP SP1
Access2003

是非、ご教授ください。


51 :名無しさん@そうだ選挙にいこう:05/02/10 17:15:46
>>49
ありがとう。

52 :46:05/02/10 17:27:21
38さんありがとうございます

参考にしながら作ってみました、上手に出来たと思いましたら
回数の1回が0回と同じになってしまい、2回〜が上位に表示
されるようです。

私の間違いだと思いますので、もう少しがんばってみます。

53 :名無しさん@そうだ選挙にいこう:05/02/10 17:28:17
>>50
よく分からないのだが、、、多分書き込みの際に、スペースが消えて、ずれてない?
全角スペースいれてくれ。

54 :50:05/02/10 18:05:05
>46

説明不足でごめんなさい。

受注データとして固定長のテキストデータがあるのですが
行毎に取り込むべき桁(レイアウト)が違っているために普通に固定長インポートすると
桁ずれが起こってしまいデータとして利用できないわけです。

しかも、複数の行で1枚の伝票データとして扱われるわけで・・・・

1枚の伝票を構成するための識別子がテキストデータの行の先頭にあって
---例---
FH(テキストデータの先頭に1つだけある)
H・・・・・・hogehoge(伝票番号や得意先名等の情報のデータ)
L・・・・・・hogehoge(商品の明細行)
L・・・・・・hogehoge(商品の明細行)
L・・・・・・hogehoge(商品の明細行)
T・・・・・・hogehoge(伝票の金額合計等の情報のデータ)
H・・・・・・hogehoge(伝票番号や得意先名等の情報のデータ)
L・・・・・・hogehoge(商品の明細行)
L・・・・・・hogehoge(商品の明細行)
T・・・・・・hogehoge(伝票の金額合計等の情報のデータ)

---以上H/L/Tの繰り返し---

つまり、伝票として"H"から始まって"L"のデータをとりつつ"T"までを一区切りの伝票として
テーブルに取り込みたいわけです。
"H""L""T"にその伝票のユニークNoがあれば識別子毎にインポートしてクエリで1つの伝票に出来そうですが・・・
それがないので(´(・)`)クマッタ・・

まだまだ説明不足だと思いますがお願いします。


55 :名無しさん@そうだ選挙にいこう:05/02/10 23:03:13
>>50

1. インポートするテーブルのケツにオートナンバー型(主キー)のフィールドと
  数値型のフィールド(データの塊を識別するため)を作っておく。

2. VBで"T"が現れると加算するようなコードを書き、
  それを数値型のフィールドに書き込む

なんて感じでテーブルを作ってしまえば?
インポートするテーブルのフィールドが多い分には、
特に問題はないと思います。


56 :名無しさん@そうだ選挙にいこう:05/02/11 02:03:57
住所編集をするのに良い方法ってないですか?

「愛知県名古屋市3−9−20」と入力されている場合
「愛知県名古屋市,3−9−20」と言う風に数字の前で区切る
とかスペースの前で区切るなんて出来ないでしょうか?

57 :50:05/02/11 02:06:51
>55

ありがとうございます。
なんとか理解できました
ですが2の部分のコードをどうやって書こうかorz
良い例がありましたらご教授下さい

あと、HとLとTはそれぞれ桁のレイアウトが違うのですくなくとも3つのテーブルにリンクさせないと
いけないですよね!?



58 :55:05/02/11 04:23:33
>>57

各行が255バイトを超えないならば、ひとつのフィールドで取り込んでしまうのも手。
特に計算とか必要もなさそうなので、クエリーとかレポートとかで
Left・Mid・Right関数など使って文字列を切り分けても良いかも。
テーブルの構造が決まったら、コードを載せます。
(Hが現れると伝票番号を書き込むというもの手か…)


59 :50:05/02/11 11:51:32
>58
ありがとうございます。
各行は128バイトでおさまります。
たしかに計算等の必要も特に発生しないと思われます。

それでは一度、ひとつのフィールドに行毎取り込み
そこから、H・L・Tを判断してそれぞれのテーブルに分けていく方がいいですか?


60 :60:05/02/11 22:23:00

【.  目 的  】 機器のリスト一覧に「個別コード」という外部キーのフィールドが012-3456の形でありますが、
このコードの左3桁012で別のテーブルを指定し、右4桁3456がそのテーブル内のIDとなっています。別テーブル
のフィールド内容、数は機器により異なります。

これを一つのフォームで表示、選択できるようにしたいと思っています。

具体的には、ある機器を選ぶとそれに応じたフィールド名称とその詳細情報 が表示されるviewerとしての機能。
また、機器に情報を登録できるように、それら詳細情報を選択できる機能をつけようとしています。

【.  条 件  】 OS:winXP personal, access2000

■試したけどうまくいかなかった処理

外部キー012-3456のコードをleft3桁とright4桁に分離して、別テーブルのフィールド名称を
  
  For C = 0 To rst.Fields.Count - 1
フィールド名称 = rst.Fields.Item(C).Name
Me.機器情報.RowSource = "フィールド名称"
Next

として取得し、別テーブルの詳細情報はSQL文で取得できましたが、これをリストボックス
に表示しようとしたところ、行き詰ってしまいました。ご教授よろしくお願いします。

■これだけはやりました

>>1を読んだ】 はい
【Googleで調べた】 はい
【検索キーワードは?】 rowsource リストボックス
            ControlSource リストボックス

61 :55:05/02/11 23:41:59
>>59

その方が簡単だと思いますよ。
あと、255バイトじゃなくて255文字の間違いだった(全角・半角問わず)。

データ溜め込んでいくつもりなら、最初に言った方法では駄目ですね。
データの塊を識別するためのフィールドには"H"が現れると伝票番号を書き込んでいく方が良さそう。
ただし一意性は高いけど、絶対というわけではないので
さらにデータ取込日も加えれば、重複する可能性は皆無でしょう。
それに伴い、フィールドはテキスト型にするべきですね。

62 :名無しさん@そうだ選挙にいこう:05/02/12 14:53:26
setfocusでフォームヘッダーから帳票タイプのテキストボックスへフォーカス移動させているんですが、
一番上のレコードに移動してしまいます。一番下のレコードに移動させる方法はないでしょうか?

63 :名無しさん@そうだ選挙にいこう:05/02/12 15:00:18
DoCmd.GoToRecord , , acNewRec

64 :名無しさん@そうだ選挙にいこう:05/02/12 15:07:08
作業用PC;ソフトAccess2002SP3
       OSwindowsXPPro
       メモリ128MB CPU1133MHz
サーバー;ソフトSQLバージョン8.0
       OS;windowsserver2000
この環境で鯖のSQLから引っ張ってきたデータを作業用PCのAccessでレポートとして抽出し、
そのレポートをSnapShot形式でエクスポートすると9割の確立でAccessが応答なしになってしまいます。
違う作業用PCでも確認したんですが同じようにとまってしまいました。
作業毎に応答なしになってしまい作業効率が非常に悪いです。
よい改善方法はないでしょうか?

65 :名無しさん@そうだ選挙にいこう:05/02/12 17:27:09
環境を再現できんからなんとも言えんが
メモリーが足んないじゃない?

66 :64:05/02/13 16:00:27
>>65
一応使ってるパソコンは会社のあるIBMのシンクパッドなんですが、
同じ環境にあるシンクパッドでメモリが256MBあるやつと
シンクパッドではないけど512MBあるやつでも試してみたんですが
両方だめでしたorz



67 :名無しさん@そうだ選挙にいこう:05/02/14 08:50:27
フィールドのIME入力モードを半角カタカナにすると、別のフィールドに移動しても半角カタカナのままで
激しく不便なんですが、これをなんとかする方法はないでしょうか?
IME入力モード「オン」だと「半角カタカナ」の方が優先されて設定残るようです。

環境は
Access2002
win2k
ATOK17
です。

MS-IMEだと元に戻るんでしょうか……?

68 :名無しさん@そうだ選挙にいこう:05/02/14 20:09:45
教えて下さい。
URL及びメールで、

テキストボックスで、ハイパーリンクで
URLは飛んで、接続されるのですが、

メールはどのようにすると接続されるのでしょうか。
Outelook Expressを先に開いておけば、自然と、宛先に
入るのですか、教えて下さい。入らないのです。




69 :50:05/02/15 15:55:49
前に伺った方法ではちょっと僕の理解度を超えていたのでorz
再度質問です。
前回の問題点と同じなのですが、今回は一度固定長のテキストを1行につき
1フィールドに取り込み、mid関数を使い識別できる部分を取り出します。
↑伝票の頭を示す"H"と伝票明細行を示す"L" そして伝票の終わりをしめす"T"です。

イメージとしては

種別 システム伝番

H 1
L 1
L 1
L 1
T 1
H 2
L 2
L 2
T 2
H 3



と続く内容で、"H"が表示されたらシステム伝番と名づけてそこに数値が加算されるように
できないでしょうか?


以上のイメージです よろしくお願いします。

70 :名無しさん@そうだ選挙にいこう:05/02/15 16:23:34
>>68
ハイパーリンクアドレスに

mailto:<hoge@hoge.jp>

って感じでいれておけばOKのはずだけど、、
規定のメーラーが設定されてない?


71 :名無しさん@そうだ選挙にいこう:05/02/15 17:12:30
すいません。只今ACCESS学習中で猿同然な質問とは思うのですが・・・

複数のパラメータをAND条件ではなくてOR条件としてデータ抽出することは
可能でしょうか?
OS:Windows2000、ACCESSのバージョン:2000です。

顧客マスタテーブルに
顧客ID、顧客名カナ、顧客名漢字、受注日・・・等があり、
例えば、「IDは分からないけど漢字は分かる」とか、
「何もわからないけど何月何日に受注のあった人」とか、限られた情報を
抽出条件にしたいのです。

72 :名無しさん@そうだ選挙にいこう:05/02/15 17:26:30
>>71 できるけど、、、検索条件の入力はどうするつもり?あとVBA使う?

73 :名無しさん@そうだ選挙にいこう:05/02/15 17:52:11
>>72
え?VBAが必要になるんですか?
ちっと私には荷が重い・・・

ダイアログボックスにズラーっと入力欄が並んでるイメージだったんですが・・・。

74 :名無しさん@そうだ選挙にいこう:05/02/15 19:16:26
頭悪い回答で申し訳ないが、それぞれのフィールドの抽出条件を

Like "*" & [パラメータ] & "*"

にして、Null値の時は全部抽出にしちゃえばいいんでないの?

75 :名無しさん@そうだ選挙にいこう:05/02/15 19:28:46
>>74
ありがとうございます。試してみました。

おかげさまでLike"*"&[顧客名カナを入力]&"*"で結果としての目的、
判っている情報から抽出することは達成しました。

・・・しかし、>>72氏のご指摘はこれのことでしょう。一つずつパラメータ
聞いてきやがる・・・orz

76 :名無しさん@そうだ選挙にいこう:05/02/15 20:58:54
>>70
ありがとうございました。
68です。



77 :72:05/02/15 21:43:45
>>75
そそっ。全部のパラメータ聞かれるので、フォーム作って、
検索条件入れるテキストボックスを各フィールドごとに作って、

like "*" & Forms!フォームの名前!テキストボックスの名前 & "*"

とか、条件に入れれば良いです。

でこれだと、正直検索に時間がかかると思うので、何も条件が入って
いない部分は検索しないようにしたり、先頭一致、後方一致検索など
選べるようにしたりするといいんじゃないかなぁと。その場合はVBA
が必要なんじゃないかなと。そういうわけです。

78 :75:05/02/15 22:34:29
>>77
ありがとうございます。VBAもちょっと調べてみますが、おそらく俺には
無理ぽ。できればカコイイのですが・・・。
検索メニューを豊富に作って(w)、後は運用で乗り切ろうかと思います。

79 :名無しさん@そうだ選挙にいこう:05/02/16 00:27:13
>>69

難しいといっても、制御文なんてDo〜Until分と
If文くらいしか使いませんよ。
せいぜい、30ステップぐらいじゃない?

80 :名無しさん@そうだ選挙にいこう:05/02/16 01:21:33
【.  目 的  】 レコードの再抽出がしたい
【.  条 件  】 win2000,access97
【.  概  要  】
Set rs=db.openrecordset( _
"SELECT *" _
& " FROM table" _
& " WHERE [フィールド1]=" & [条件1])

で、だした rs に更に[フィールド2]=[条件2]をかけてみたいのです。
例:rs で、[条件2]=nullでなければ、抽出する。
初心者ですいませんが、よろしくお願いします。

>>1を読んだ】 はい
【Googleで調べた】 はい
【検索キーワードは?】 access、vba、レコード、再抽出

81 :名無しさん@そうだ選挙にいこう:05/02/16 10:10:03
>>80
Set rs=db.openrecordset( "SELECT * FROM table WHERE [フィールド1]=" & [条件1],dbOpenDynaset)
rs.Filter = "[フィールド2]=]=[条件2]"
Set rs =rs.OpenRecordset

If .EOF And .BOF Then
Msgbox "ないよ"
Else
Msgbox "あるよ"
End If

以下略

82 :81:05/02/16 10:12:24
あちゃ...
> rs.Filter = "[フィールド2]=]=[条件2]"

rs.Filter = "[フィールド2]=[条件2]"

> If .EOF And .BOF Then

If rs.EOF And rs.BOF Then

83 :名無しさん@そうだ選挙にいこう:05/02/16 17:20:51
Access2002で、クエリの抽出条件に
[Forms]![フォームB]![テキスト1(別のテーブルと連結している)]
と入れてレコードの絞り込みをしていたのですが、
このフォームBをフォームAのサブフォームしてからエラーが出るようになってしまいました。

サブフォームとして、フォームAからBを開いている時は、どのような指定の仕方をすればいいのでしょうか?

■具体例■
フォームA(単票)
氏名  住所 年齢その他

フォームB(帳票・サブ)
Aの申込商品(テキスト1)  値段  個数  受注番号
      〃           〃   〃     〃

フォームフッター
[商品毎の番号の最大値](←絞り込みされた結果)
(=Dlookup("最大値","クエリ名"))


↑をフォームBだけでやるとエラーは出ずに使えます。

84 :83:05/02/16 20:05:03
自己(?)解決。

[Forms]![フォームA]![フォームB]![テキスト1(別のテーブルと連結している)]

でいけました。

85 :名無しさん@そうだ選挙にいこう:05/02/16 20:11:38
Accessで複数の列を一気に挿入する方法ってどうやるよ?

86 :名無しさん@そうだ選挙にいこう:05/02/16 21:45:22
>>85
よく分からんが普通に挿入できるんじゃね?

87 :名無しさん@そうだ選挙にいこう:05/02/16 22:13:36
挿入-列の挿入 では1列ずつしか挿入できないけど

88 :名無しさん@そうだ選挙にいこう:05/02/16 22:14:35
コピーも複数セルを選択して貼り付けても1つのセルにしか貼り付かないんだが
どうやったら複数セルに貼り付けできるよ?

89 :名無しさん@そうだ選挙にいこう:05/02/16 23:32:39
SQLを勉強する

90 :名無しさん@そうだ選挙にいこう:05/02/16 23:55:10
>>69

フォームでコマンドボタンを作ってからプロパティーで
「イベント」タブの「クリック時」を選択。ちなみにADOです。

Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim i As Integer

Set cn = CurrentProject.Connection
rs.Open "テーブル名", cn, adOpenKeyset, adLockOptimistic

i = 0
Do Until rs.EOF
If Left(rs!データが入っているフィールド名, 1) = "H" Then
i = i + 1
End If

rs!システム伝番 = i

rs.Update
rs.MoveNext
Loop

rs.Close: Set rs = Nothing
cn.Close: Set cn = Nothing

91 :90:05/02/17 02:46:58
追記

あと、絶対オートナンバー型のフィールドが必要だと思いますよ。
そうじゃないと誰かがインポートしたテーブル内を並べ替え、
且つ、保存してしまったら元に戻すの大変だよ。
つまり、オートナンバー型のフィールドでデータの取り込み順を
保証させるのです。
追記型(データを溜め込んでいく)にしたいのなら
一言いってくれればまたコード載せます。



92 :名無しさん@そうだ選挙にいこう:05/02/17 22:45:12
>>88
ちょっと待て!スレはここでいいのか?Excelスレじゃねーぞここ。

93 :80:05/02/17 23:49:52
>>81
ありがとうでし。ばっちぐーでした。

94 :名無しさん@そうだ選挙にいこう:05/02/18 10:33:33
[日付]  [数] のフィールドがあって、月初めから各日にちごとの累計をクエリで出したいと考えています。

DSum("[数]","テーブル名","日付<=" & [日付])

を試してみたんですが、エラーが出てしまいます。
[日付]を数値型に変えると累計出してくれるんですが、それでは意味もなく……。へるぷみー。

95 :81:05/02/18 13:37:39
>>94
DSum("[数]","テーブル名","Clng(日付)<=" & CLng([日付]))
でどう?

96 :名無しさん@そうだ選挙にいこう:05/02/18 15:08:04
>>95
いけましたthx!

97 :名無しさん@そうだ選挙にいこう:05/02/19 23:37:35
質問させてください。

テーブルに最大数と最小数というフィールドがあり、1つのレコードの中で、
最小数は最大数よりも小さくするという入力規則を設定したいのですが、
最小数の入力規則に

< [最大数]

で上手くいきません。
助言お願いします。

98 :名無しさん@そうだ選挙にいこう:05/02/20 01:16:06
>>97
入力は、テーブル相手に直にやるつもりなのかな
なんかそんなふうに読めるけど。テーブルだけ相手にしてたら、やりたいことはほとんど出来ないよ。
(逆にクエリとフォーム使えば、やりたいことはたぶん全部できる)
そのテーブルを基にフォームをつくって。ウィザードでいいからさ。
で、最小値フィールドのプロパティ→イベント→更新後処理→イベントプロシージャ
3点ボタンクリックしてコード画面出したら、以下をコピペ
private sub 最小値_afterupdate()
if [最小値]>=[最大値] then
msgbox "値デカすぎ",vbokonly,"入力やり直し"
[最小値]=null
exit sub
end if
end sub


99 :名無しさん@そうだ選挙にいこう:05/02/20 02:13:09
すいません、Access2000のレポートについて教えてください


日付 顧客 担当
-------------------------
2005/02/01 海山商事 石塚
2005/02/02 海山商事 十勝
2005/02/02 海山商事 中島
2005/02/03 海山商事 田中
2005/02/03 山川物産 山田
2005/02/04 海山商事 中島
2005/03/01 海山商事 鈴木



上のようなテーブルから下のようなレポートを作るには
どうしたらいいのでしょう?



月 顧客 1日 2日 3日 4日
---------------------------------------
2月 海山商事 石塚 十勝 田中 中島
中島
山川物産 山田
3月 海山商事 鈴木


100 :99:05/02/20 02:16:51
書き直し・・・

日付      顧客 担当 
------------------------- 
2005/02/01 海山商事 石塚 
2005/02/02 海山商事 十勝 
2005/02/02 海山商事 中島 
2005/02/03 海山商事 田中 
2005/02/03 山川物産 山田 
2005/02/04 海山商事 中島 
2005/03/01 海山商事 鈴木 



上のようなテーブルから下のようなレポートを作るには 
どうしたらいいのでしょう? 



月   顧客   1日  2日  3日  4日 
------------------------------------- 
2月 海山商事 石塚 十勝  田中  中島 
              中島 
   山川物産 山田 
3月 海山商事 鈴木 


101 :97:05/02/20 06:21:40
>98
ありがとうございます。できました。

102 :名無しさん@そうだ選挙にいこう:05/02/20 15:42:42
どうも割り込み失礼します。
とある会社が発表するドキュメントがエクセルで作成されています。そこには
たくさんのデータが記述されています(時刻表のような物です。)
これを効率よくACCESSデータにするには、なにか得策ってありますかね。
アイデアが思い浮かばないんです。。抽象的な質問ですいません。
よろしくお願いします


103 :名無しさん@そうだ選挙にいこう:05/02/20 19:13:52
エクセルにてCSV形式で保存->アクセスにインポート

104 :名無しさん@そうだ選挙にいこう:05/02/20 19:51:49
>>100
もっと良いレポートの形式考えた方がいいような希ガス

105 :名無しさん@そうだ選挙にいこう:05/02/21 02:48:56
>>100
こういうのって、ある意味FAQだったりするかもしれないんだけど、ヒントの与え方
教え方がとてもむずかしいね。
クロス集計クエリの守備範囲は完全に超えてるし。
VBAでレコードセット開くしかなさそう。
コピペでそのまま使えるコード丸ごと書いてあげるのも何だかなって感じだし
(>>100のケースではけっこう長いコードになりそう)
けっきょくADOかDAOでレコードセット開くやり方おぼえてくれってことになっちゃう。
それが面倒ならExcelでやってちょーだいなと。
それにしてもこのレポートの形、>>104のいうとおり、かなりダサくない?


106 :100:05/02/21 10:13:00
>>104
>>105
どうもありがとうございます。

正直、自分としては下のようなレポートでいいと思うんだけど、
ユーザー部門の人が「日付が横軸じゃないと」ってきかなくて・・・
もう一度、下のレポートで押してみます。

日付      顧客   担当 
------------------------- 
2005/02/01 海山商事 石塚 
2005/02/02        十勝 
                中島 
2005/02/03 海山商事 田中 
         山川物産 山田 
2005/02/04 海山商事 中島 
2005/03/01        鈴木 



107 :名無しさん@そうだ選挙にいこう:05/02/21 12:16:34
>>106
それも微妙だな……

108 :100:05/02/21 12:57:37
>>107
例えばどんな感じがいいでしょうか?
なんか楽に作れておすすめのレイアウト教えてください。

109 :109:05/02/21 13:17:47
マイナーなDBを使っているのですが、以下の様な福袋表と内容表を項目[福袋番号]
を使ってリンクさせて同一画面で入力出来るフォームを作りたいのですが今のDBでは
作る事が出来ません。

つまり複数のメインレコードとそれぞれのリンクされた複数のサブレコードを両方共に
表示・入力出来る入力フォームを作りたいのです。

ACCESSではこんな入力フォームは作成可能でしょうか?

|福袋表|内容表|


−−−−−−−−−
|福袋1|りんご|
|   |ばなな|
|   |みかん|
−−−−−−−−−
|福袋2|すいか|
|   |   |
|   |   |
−−−−−−−−−
|福袋3|メロン|
|   |いちご|
|   |   |
−−−−−−−−−

福袋表の項目     内容表の項目

[福袋番号]←リンク→[福袋番号]
           [内容明細]

110 :名無しさん@そうだ選挙にいこう:05/02/21 21:23:10
---------- ここから ----------
【.  目 的  】 他のユーザーが使用中でもフォームやレポートを更新したい。
【.  条 件  】 Win2003Server、WinXpPro Access2003
■試したけどうまくいかなかった処理
【. 概  要  】 開発者(更新者)以外は全て、更新権限をはずしたけど駄目。
■これだけはやりました
>>1を読んだ】 はい
【Googleで調べた】 はい
【検索キーワードは?】 排他、更新、フォーム、Access
教えて下さい。
アクセス2003で開発者1名、使用者多数って環境で、
誰か1人でも使用されていると開発者はフォーム等の変更が出来ません。
使用者には更新権限は与えていません。
いつでも裏で開発者が開発出来る環境にしたいのですがご存知の方教えて下さい。
以前は97を使用しており、その時は平気で裏でバンバン変更出来ていました。

111 :名無しさん@そうだ選挙にいこう:05/02/21 23:22:41
>>109
こんなんならあるけどね。
ttp://www.accessclub.jp/actips/tips_95.htm
あと、左側に福袋の一覧表を出して、レコードを選んだら
右側にその内容が出る、とかなら素で出来る。

それそのものが作りたいなら、VBで
1.データグリッドの中にデータグリッドを押し込む
2.何かグリッドコントロールを買ってきてガチガチに制御する
あたりになってしまうと思われ。表示だけならgrapecityあたりで売ってるんだけど。

112 :111:05/02/21 23:45:40
ちょっと考えたけど、>>111の1.はかなりドツボ。やるなら2.。

113 :名無しさん@そうだ選挙にいこう:05/02/22 03:02:58
>>100

まずテーブルが以下の形になっているとして

顧客テーブル: [顧客ID] , [顧客名]
担当者テーブル: [担当者ID] , [担当者名]
履歴テーブル: [日付(日付時刻型)] , [顧客ID], [担当者ID]

下のようなテーブルをつくる

レポート用まとめテーブル : [何年何月(文字列型)],[顧客ID],[顧客名],[Fld1],[Fld2],[Fld3]・・・[Fld31]


あとは適当なフォームつくって適当にボタン貼り付けて、イベントプロシージャに
以下をコピペ



114 :続き:05/02/22 03:03:37
Private Sub コマンド0_Click()
Dim MyStrSQL As String
CurrentProject.Connection.Execute "DELETE * FROM レポート用まとめテーブル"
MyStrSQL = "INSERT INTO レポート用まとめテーブル ( 何年何月, 顧客ID, 顧客名 ) "
MyStrSQL = MyStrSQL & "SELECT Format([日付],'yyyy年mm月') AS 何年何月, 履歴テーブル.顧客ID, 顧客テーブル.顧客名 "
MyStrSQL = MyStrSQL & "FROM 履歴テーブル INNER JOIN 顧客テーブル ON 履歴テーブル.顧客ID = 顧客テーブル.顧客ID "
MyStrSQL = MyStrSQL & "GROUP BY Format([日付],'yyyy年mm月'), 履歴テーブル.顧客ID, 顧客テーブル.顧客名"
CurrentProject.Connection.Execute MyStrSQL
Dim MyRst0 As New ADODB.Recordset
Set MyRst0 = New ADODB.Recordset
MyRst0.Open "レポート用まとめテーブル", CurrentProject.Connection, adOpenKeyset, adLockOptimistic
If MyRst0.EOF Then
MyRst0.Close
Set MyRst0 = Nothing
Exit Sub
MsgBox "データがない"
End If
Dim NanNichi As Integer
Dim MyRst1 As New ADODB.Recordset
Set MyRst1 = New ADODB.Recordset
MyStrSQL = "SELECT Format([日付],'yyyy年mm月') AS 何年何月, Day([日付]) AS 何日, 履歴テーブル.顧客ID, 担当者テーブル.担当者名 "
MyStrSQL = MyStrSQL & "FROM (履歴テーブル INNER JOIN 顧客テーブル ON 履歴テーブル.顧客ID = 顧客テーブル.顧客ID) "
MyStrSQL = MyStrSQL & "INNER JOIN 担当者テーブル ON 履歴テーブル.担当者ID = 担当者テーブル.担当者ID"
MyRst1.Open MyStrSQL, CurrentProject.Connection

115 :続き:05/02/22 03:05:04
MyRst0.MoveFirst
Do Until MyRst0.EOF
MyRst1.MoveFirst
Do Until MyRst1.EOF
If (MyRst1![何年何月] = MyRst0![何年何月]) And (MyRst1![顧客ID] = MyRst0![顧客ID]) Then
NanNichi = MyRst1![何日]
If IsNull(MyRst0("Fld" & NanNichi)) Then
MyRst0("Fld" & NanNichi) = MyRst1![担当者名]
Else
MyRst0("Fld" & NanNichi) = MyRst0("Fld" & NanNichi) & vbCrLf & MyRst1![担当者名]
End If
End If
MyRst1.MoveNext
Loop
MyRst0.MoveNext
Loop
MyRst0.Close
Set MyRst0 = Nothing
MyRst1.Close
Set MyRst1 = Nothing
MsgBox "終わったよ"
End Sub

まとめテーブルに吐き出されるデータはたぶん順番がバラバラなので
あとは適当にクエリでソートしてね

116 :109:05/02/22 11:14:34
>>111-112
リプライありがとうございました。
テーブルをクリックして明細部を表示するという事が出来るのは知っていたのですが、
最初から表示中の全ての福袋の内容も同時に表示したいと思っていたので今回の希望
には添いませんでした。

グリッドコントロールという言葉は今一良く分からないのですが、F1カーのスタート位置・・・
じゃなくてフォーム上での位置を把握して表示や入力を制御するVBで作ったプログラムの一種
という意味なのかな?と理解しました。

しかも買わなければならないと言うことは素人が簡単に作れるプログラムでもなさそうですし、
こういうフォームはAccessでもやはり簡単ではなさそうですね。

117 :100:05/02/22 12:06:05
>>113-115
どうもありがとうございます。
vbCrlfは思いつかず、別行にしなきゃならないっていう先入観でハマってました。
実際はもうちょっと複雑なのですが、これでいけそうです。

118 :名無しさん@そうだ選挙にいこう:05/02/26 13:29:10
日付経過関数で質問です。


Dim d As Variant

d = RS!年 & " / " & RS!月 & " / " & RS!日
MsgBox DateDiff("d", d, Now)

でうまく出ません。

テーブルは年、 月 、日の別フィールドで数値になってます。
おねがいします。

119 :名無しさん@そうだ選挙にいこう:05/02/26 17:43:19
どういう出力結果を望んでいるのかよく解らないけど、
dが2005/2/27
Now関数で得られた値が2005/2/26だとすると、
メッセージボックスには-1が表示されるよ。

120 :名無しさん@そうだ選挙にいこう:05/02/26 17:47:41
コンボボックスでフィールドが2列あるテーブルから選択して、
コンボボックスの連結列は2列目でしたのですが、テキストボッ
クスの表示は1列目でしか表示されません。
表示を2列目にしたい場合は順番を変えるしかないでしょか?

121 :名無しさん@そうだ選挙にいこう:05/02/26 17:57:05
>>120

コンボボックスは、ひとつのフィールドしか表示できないよ。
プロパティーの列幅で表示したい場所の値を>0cmにすればOK。
それ以外は0cmね。

122 :名無しさん@そうだ選挙にいこう:05/02/26 19:10:16
121さんありがとうございます。
例で言いますと、コードは一列目と金額は2列目の表があって、
コンボボックスのリストで両方表示しコードは参考だけ、
、テキストに金額を計算用に入力したいのです。
私がやるとテキストには1列がそのまま表示、計算はきちんと2列目で
おこなってはいるのですが・・・。


123 :名無しさん@そうだ選挙にいこう:05/02/27 12:02:50
各カテゴリーから1つずつ候補を選択した全ての組み合わせを出したいのですが。

以下のテーブル(tbl商品)があります。

ID 分類 定価
1   1  100
2   2  150
3   3  100
4   2  120
5   3  130
(IDはオートナンバー)

そして以下のような結果が欲しいのですが、

分類1のID 分類2のID 分類3のID 定価の合計
1       2       3      350
1       2       5      380
1       4       3      320
1       4       5      350

これを最終的にクエリまたはテーブルで出したいのですが、一番シンプルに出来る方法
が何かありましたら、ご教授ください。
テーブルを作り直すのも可です。

(OS:winXPhome access2003)


124 :名無しさん@そうだ選挙にいこう:05/02/27 12:57:39
日本語って難しいね

125 :名無しさん@そうだ選挙にいこう:05/02/27 19:09:41
なにをしたいのか途中までは分かったけど
最終的にどういう形になるのを狙っているのか非常にイメージしずらい。

分類は分類コード?分類名?
であれば、分類名項目までも見せてもらわないとテーブル設計が適切か分からない。
分類名を1,2,3・・と数字で書くとコード自体と勘違いしやすい。
商品自体ではなく、分類自体に価格がついているイメージってどういうこと?
それでいて同じ分類名でもIDが違うから価格が違うっていうのはおかしくない?
要は分類名と商品名の要素がごっちゃになったテーブルになってると見える。

最低でも分類名マスタテーブル、商品名マスタテーブルを別に作成してハッキリさせる必要があると思うが。

126 :123:05/02/27 19:29:45
すいません。非常にわかりずらい書き方だったようですね。
例を出して説明します。

ある食堂の日替わり定食に掛かる材料費を計算します。
日替わり定食は、主食・おかず・デザートという、3種類の料理の分類の組み合わせで、
必ずそれぞれの分類から1種類ずつで、日替わり定食を構成します。

・分類テーブル

分類ID 分類名
1     主食
2     おかず
3     デザート

それぞれ、単体の料理と、その材料費を、メニューテーブルに入力してあります。

メニューID  分類ID 材料費 メニュー名
1        1     100   白飯
2        2     150   トンカツ
3        3     100   プリン
4        2     120   焼き魚
5        3     130   ケーキ

127 :123:05/02/27 19:32:15
結局何がやりたいのかというと、
メニューテーブルのメニューの、全通りの組合せを一覧に出したいわけです。
下のような形でクエリとして得られれば目的が達成できます。


主食    おかず    デザート  材料費の合計
1       2       3      350
1       2       5      380
1       4       3      320
1       4       5      350

こういうことですので
>商品自体ではなく、分類自体に価格がついているイメージってどういうこと?
というわけではなく、単に端折り過ぎてしまった為に伝わっていなかっただけです。
申し訳ございませんでした。

128 :名無しさん@そうだ選挙にいこう:05/02/28 01:52:45
>>123
テーブル1にID,分類,価格のフィールドがあるとして、新規ビューの表示→SQLビューで以下を入力。

SELECT テーブル1.ID AS ごはん, テーブル1_1.ID AS おかず, テーブル1_2.ID AS デザート, テーブル1.価格+テーブル1_1.価格+テーブル1_2.価格 AS 材料費の合計
FROM テーブル1, テーブル1 AS テーブル1_1, テーブル1 AS テーブル1_2
WHERE (((テーブル1.分類)=1) AND ((テーブル1_1.分類)=2) AND ((テーブル1_2.分類)=3));

もしくは

SELECT 主食.ID AS 主食, おかず.ID AS おかず, デザート.ID AS デザート, 主食.価格+おかず.価格+デザート.価格 AS 材料費の合計
FROM [SELECT ID,価格 FROM テーブル1 WHERE 分類=1]. AS 主食, [SELECT ID,価格 FROM テーブル1 WHERE 分類=2]. AS おかず, [SELECT ID,価格 FROM テーブル1 WHERE 分類=3]. AS デザート;

129 :123:05/02/28 12:04:26
>>128

教えて頂いたSQLの上の式を参考に、自分のを作ってみましたところ、完璧に動作しました!
ありがとうございました。


130 :名無しさん@そうだ選挙にいこう:05/02/28 14:02:43
細かいつっこみで悪いんだけどさ

しずらい じゃなく しづらい だよお二人さん

131 :名無しさん@そうだ選挙にいこう:05/02/28 20:11:58
質問させて下さい。ACCESSは避けて通って来たのですが、避けられなくなり
悪戦苦闘しております。知識者の皆様、何卒お知恵をお貸し下さいませ。

【目的】
IDをキーとして、二つのテーブルに入力した内容を同時に開き比較演算する
クエリを作りたい。(顧客別に売上合計-入金合計=売掛を演算させたい。)
【条件】 ACCESS2000です。

【概要】
 [顧客マスタ]テーブル  フィールド:顧客ID、氏名
 [売上]テーブル      フィールド:顧客ID、売上額
 [入金]テーブル      フィールド:顧客ID、入金額
 リレーションシップ:顧客IDをキーに全テーブル
 【作ったクエリ】
 [売上、入金一覧]クエリ  顧客ID、売上額、入金額を同時に表示・・・

【結果】
 売上テーブルに6人6件、入金テーブルに3人3件を登録して実行したところ、
 売上・入金の両テーブルに入力がある3人3件しか出力されませんでした。

【質問内容】
 な〜んとなくダメな理由はわかるのですが、売掛残を演算させるためには、
 避けて通れないような気がしています。これを演算させる手はありますでしょうか?
 
 ちょっと強引に、売上と入金を同じテーブルにおいて、初期値0にする手を
 考えましたが、実際には商品マスタや売上明細テーブル等の十数個の
 テーブルがあり、うまく動いてくれませんでした。

132 :名無しさん@そうだ選挙にいこう:05/02/28 23:12:48
SELECT 顧客ID, sum(金額)
FROM (
  SELECT 顧客ID, 売上額 AS 金額 FROM 売上
  UNION
  SELECT 顧客ID, -入金額 AS 金額 FROM 入金
  )

133 :131:05/03/01 00:52:53
>>132
こ・・・これは・・・。レスありがとうございます。・・・しかし、通り一遍等の
テーブルとクエリがやっと扱えるようになった私には暗号に見える・・・orz

このヒント(ほんとは解答なのでしょうが・・・)を手掛かりに、解説書読み
漁ることに致します。

134 :名無しさん@そうだ選挙にいこう:05/03/01 03:05:38
<<133

132さんの()内の式だけでとりあえずは一まとめになります。
クエリの「デザインビューでクエリを作成する」を選択し、
テーブルの表示は速攻閉じる。
メニューバーに「SQL」というのがあると思うからそこをクリックすると
SELECT;

という画面が現れるからそこに()内の文を貼り付ければOK。
ただし、先頭のスペースは取り除くように。
合計とかはできたクエリを元にすればいいっしょ。



135 :名無しさん@そうだ選挙にいこう:05/03/01 11:33:44
StarSuiteも8βを触ってみた。
http://www.sun.com/software/star/starsuite/beta/

DBは殆どAccessのパクリだ。。。
BacicもついてるしAccess使いなら入りやすそうだ。
興味があるヤシ使ってみ。

エクセルもワードもパクリ。。。

でもまぁ使えるかも(w


136 :名無しさん@そうだ選挙にいこう:05/03/01 13:30:20
>>135
ダウンロードしてみたけど、レポート死んでます…

137 :131:05/03/01 19:19:47
>>132,>>134
できました!!!ありがとうございました。

最初、そのまんま貼り付けたところ、何回やってもエラーが出てしまい、
おかしいおかしい・・・と結局、本屋に解説書買いに走り、貼り付けた内容が
何なのかを学習した結果・・・・

GROUP BY 顧客ID
がなかったんですね。ここに来るまで丸一日費やしました(笑)が、
本当にいい勉強になりました。

138 :名無しさん@そうだ選挙にいこう:05/03/01 22:44:50
rounddownとかの小数点や1000単位にしたい場合の関数はありますか?



139 :名無しさん@そうだ選挙にいこう:05/03/01 23:39:27
かけたり割ったり足したり切り捨てたり切り上げたりすればいいじゃない

140 :名無しさん@そうだ選挙にいこう:05/03/02 09:24:43
規定値をそのフィールドのMAX+1にしたいんですが、規定値でSQL文使う方法はありますか?
別にMAX専用のクエリ作ってDlookupで呼び出す方が確実かな。

141 :名無しさん@そうだ選挙にいこう:05/03/02 09:31:30
というかSQL使わなくても普通にMAX出せますね。オナニー失礼。

142 :名無しさん@そうだ選挙にいこう:05/03/02 23:16:38
発注テーブルと発注明細テーブルがあって、[発注NO]と[発注明細NO]が、リレーションで一対∞になっています。
発注テーブル   ・・[発注NO] [お客様名]
発注明細テーブル・・[発注明細NO][商品NO][個数]
これをフォームの帳票フォームで、[発注NO] [お客様名] 発注明細1番目のレコードの[商品NO][個数]
              発注明細2番目のレコードの[商品NO][個数] ・・・
              というような参照用のフォームを作りたいのですが、可能ですか?
              ちなみに発注明細のレコードは[発注明細NO]1つに対して5件までしか入力出来ないようにしてあります。


143 :名無しさん@そうだ選挙にいこう:05/03/03 04:58:06
>>142
できるよ。発注テーブルでフォームをまず作って、デザインモードで
サブフォームを入れれば、あとはウィザードが案内してくれる。

144 :名無しさん@そうだ選挙にいこう:05/03/03 16:14:05
普段は入力不可の灰色で、チェックボタンをオンにした時だけ入力可能になる処理はどうやったらできますか?

145 :名無しさん@そうだ選挙にいこう:05/03/03 21:39:03
>>143
レスありがとうございます。只・メインが帳票フォームでサブフォームの内容も同時に表示したいのですが、
   1列目・・・[発注NO] [お客様名] 発注明細1番目のレコードの[商品NO][個数]発注明細2番目のレコードの[商品NO][個数]
   2列目・・・[発注NO] [お客様名] 発注明細1番目のレコードの[商品NO][個数]発注明細2番目のレコードの[商品NO][個数]
   3列目・・・[発注NO] [お客様名] 発注明細1番目のレコードの[商品NO][個数]発注明細2番目のレコードの[商品NO][個数]
 というような感じにしたいのですが・・・・

146 :名無しさん@そうだ選挙にいこう:05/03/04 02:07:40
>>144
Private Sub チェック123_BeforeUpdate(Cancel As Integer)
If チェック123.Value = True Then
何か.Enabled = True
Else
何か.Enabled = False
End If
End Sub
みたいな。灰色にならないけど。

>>145
邪悪な希望だな。更新できなくていいなら以下で可能。
発注明細テーブルにIncrimentなフィールドを付けて、
SELECT …, count(*)+1 as 明細番号 , … where 発注No= 自分の発注No and 某フィールド<自分の某フィールド From 発注明細テーブル
ってビューをまず考える。発注No毎の番号を付けたものを作るクエリ。
こいつを明細番号を元にバラバラにしてから一つに戻すよろし。望むテーブルが出来る。それをフォームに。
更新できるフォームを作りたいなら、VBで書くかそういうテーブルにしちゃうかになると見た。

147 :146:05/03/04 02:13:00
>>144
>>146のついでに背景色を変えたら要求を満たせる。

148 :初心者に毛が生えた:05/03/04 10:23:29
【.  目 的  】
業務報告書を作成したいのですが、ひとつのフィールドだけ長文を入れる必要があります。
A4一枚で入りきれない場合、次のページに出力させたいのですが、VBAを使わずに出来る方法はありますか?
またVBAを使う場合は、どのようなコードを用いればいいのでしょうか?

【.  条 件  】
windowsXP SP2、access 2003

■試したけどうまくいかなかった処理
【. 概  要  】
思いつかなかったため、手で別のフィールドに入れています・・・

■これだけはやりました
>>1を読んだ】 はい
【Googleで調べた】 はい
【検索キーワードは?】 access、レポート、長文 etc...

149 :名無しさん@そうだ選挙にいこう:05/03/04 18:33:27
>>148
テキストボックスの「印刷時拡張」を「はい」じゃだめ?


150 :名無しさん@そうだ選挙にいこう:05/03/04 19:55:16
>>148
1 フィールドは 256だよ
正式には250 テーブルで これ以上を入れてみな
エラーになるはず


151 :名無しさん@そうだ選挙にいこう:05/03/04 20:37:54
>>150

使ったことないから解らないけど、
メモ型だと2^16-1文字までいけるらしいよ。

152 :145:05/03/04 22:30:42
>>146
レスありがとうございます。
でも、ちょっと難しくて・・・
もうちょっと勉強してから考えます。
ちなみに、
Incrimentなフィールドって行番号見たいな物を作ればいいんでしょうか?


153 :名無しさん@そうだ選挙にいこう:05/03/04 22:35:25
>>152
インクリメント = 加算
デクリメント = 減算

154 :名無しさん@そうだ選挙にいこう:05/03/05 14:13:12
Access2002の初心者です。よろしくお願いします。

現金出納帳の残高を計算するのは、クエリーでは無理でしょうか?

日付 摘要 入金  出金  のテーブルから
日付 摘要 入金  出金  残高  を作りたいのです。

(1件前の残高+現在レコードの入金−現在レコードの出金)の計算結果を
残高フィールドに入れたいのですが・・・ 
出金をマイナスにして、入金欄と同じフィールドにおとし
そのフィールドの累計金額を残高に入れるのもOKです。
クエリーだけですむなら、何個連結させてもかまいません。

155 :146:05/03/05 14:31:19
>>152
ごめん、ローカルな用語使っちゃった。オートナンバの事。
明細番号、ってオートナンバ型のフィールドを作った上でこんな感じ。

SELECT 発注テーブル.発注番号, 発注テーブル.お客様名,
明細1.商品番号, 明細1.個数, 明細2.商品番号, 明細2.個数, 明細3.商品番号, 明細3.個数,
明細4.商品番号, 明細4.個数, 明細5.商品番号, 明細5.個数
FROM ((((([SELECT drv.発注番号, Sum(IIf(drv.発注内連番=1,drv.明細番号,0)) AS 明細1,
Sum(IIf(drv.発注内連番=2,drv.明細番号,0)) AS 明細2, Sum(IIf(drv.発注内連番=3,drv.明細番号,0)) AS 明細3,
Sum(IIf(drv.発注内連番=4,drv.明細番号,0)) AS 明細4, Sum(IIf(drv.発注内連番=5,drv.明細番号,0)) AS 明細5
FROM [SELECT 発注テーブル.発注番号, 発注明細テーブル.明細番号, (SELECT Count(*)+1
FROM 発注明細テーブル as tmp WHERE ((tmp.明細番号<発注明細テーブル.明細番号)
AND(tmp.発注番号=発注明細テーブル.発注番号))) AS 発注内連番
FROM 発注テーブル INNER JOIN 発注明細テーブル ON 発注テーブル.発注番号=発注明細テーブル.発注番号
GROUP BY 発注テーブル.発注番号, 発注明細テーブル.明細番号, 発注明細テーブル.発注番号
]. AS drv GROUP BY drv.発注番号 ]. AS drv2 LEFT JOIN 発注明細テーブル AS 明細1 ON drv2.明細1 = 明細1.明細番号)
LEFT JOIN 発注明細テーブル AS 明細3 ON drv2.明細3 = 明細3.明細番号) LEFT JOIN 発注明細テーブル AS 明細2
ON drv2.明細2 = 明細2.明細番号) LEFT JOIN 発注明細テーブル AS 明細5 ON drv2.明細5 = 明細5.明細番号)
RIGHT JOIN 発注テーブル ON drv2.発注番号 = 発注テーブル.発注番号) LEFT JOIN 発注明細テーブル AS 明細4
ON drv2.明細4 = 明細4.明細番号;

VB使ったほうが幸せになれるな、こりゃ。

156 :名無しさん@そうだ選挙にいこう:05/03/05 14:33:13
>>154
1.日付で絞り込んで単票形式で該当の1レコードのみ表示する方法
2.累計出して計算する処理が重いクエリを使う方法
3.入金と出金一つのフィールドでいいじゃん方法

どれがいい? お勧めは3

157 :154:05/03/05 14:46:12
>156 
900件ぐらいあるので、単票は・・・
お勧めの3をお願いします。

158 :名無しさん@そうだ選挙にいこう:05/03/05 14:49:59
900件だったら都度全部足せ。

159 :154:05/03/05 14:55:15
追加や日付の修正が何度もありうるので、そこを何とか…

160 :156:05/03/05 15:10:15
何か勘違いしてたようだ。表形式にするんだったら2しか思いつかないや。

入出金:[入金]-[出金]の列追加したクエリ(Q_現金出納帳)を用意して、
残高: DSum("入出金","Q_現金出納帳","日付 <= #" & [日付] & "#")

もしくは、入金累計と出金累計出して-するか。
入金累計: DSum("入金","現金出納帳","日付 <= #" & [日付] & "#")
出金累計: DSum("出金","現金出納帳","日付 <= #" & [日付] & "#")
残高:[入金累計]-[出金累計]

900件あったら重そうだなぁ。

161 :154:05/03/05 15:33:17
>160
1レコードづつ、テーブル全体から条件にあてはまるのを選択して集計する
というイメージですね?
日付が重複するので、まず連番をふったテーブルを作成して
その連番を索引キーにしたら少しは早くなるかもしれませんね・・・

今からやってみます。
ありがとうございました。

162 :名無しさん@そうだ選挙にいこう:05/03/05 15:47:39
日付の修正すらありえるんだったら累計出すたびに連番ふり直さないとおかしくならないか?

163 :154:05/03/05 17:28:39
>156
できました!ありがとうございます
確定申告に間に合いそうです
>162
ちょっとめんどくさいけど、その都度ふりなおしてます

164 :名無しさん@そうだ選挙にいこう:05/03/05 17:34:43
Access2000を使用しています。

WEB上にアンケートを用意し、そのアンケートの結果を
Accessに保存をしたいのですが、
そのような場合どの用にコードを書けばよいのでしょうか?

あるテーブルから、データを取得し、その取得したデータを加工する。
といったやりかたはわかるのですが、同じようなやりかたで出来ますか?
もし、出来るとしたら、どの様に記述をしたら良いのか、ご教授お願いします。

165 :名無しさん@そうだ選挙にいこう:05/03/05 19:01:56
>>164
状況がわかんない。
そのアンケートっつーのがWeb鯖上のデータベースにアンケートの内容を反映させるものであり、
かつ、そのデータベースっつーのが外からODBC接続ができる種類のものである場合、
ODBCドライバを用意してからAccessでテーブルのリンクして完了だけど。
そこらへんのアンケートCGIだったりIISのプログラム話だったりすると話が変わっちゃう。

166 :名無しさん@そうだ選挙にいこう:05/03/05 20:51:39
【目 的】
 テーブルでは数値(長整数型)で持っている項目を、
 選択クエリーを使って固定長のテキストへエクスポートした際、前ゼロを埋めたい

【条 件】使用OS:Win98(SE) ACCESSのバージョン:97
■試したけどうまくいかなかった処理
【概 要】
 選択クエリーへ、Right("000" & [項目],3)という式を入れてみた。
         Right("000" & CStr([項目],3)という式を入れてみた。
         Format([項目],"000)という式を入れてみた。

【駄目な理由】
 上記いずれも、クエリー上ではちゃんと前ゼロで表示されている(『001』『000』とか)
 が、固定長テキストに吐き出すと、前詰め後ろスペースになってしまっている。
 (『1__』とか『___』とか ※_はスペースとする)

■これだけはやりました
>>1を読んだ】 はい
【Googleで調べた】 はい
【検索キーワードは?】
 Access テキスト エクスポート 固定長 数値

よろしくです。

167 :名無しさん@そうだ選挙にいこう:05/03/05 21:52:11
>>166
Access2002だと、少なくともFormat....について正常に前ゼロ埋めでエクスポートするよ。
(他は確かめてないよん。)

168 :145:05/03/05 23:23:52
>>155

す・スゴイ!
!?!?
とにかくすみません。手間取らせて・・・
意味が分かるように頑張ります・・・

169 :名無しさん@そうだ選挙にいこう:05/03/06 00:52:16
>>166

format関数で目的の結果が得られないのなら、関数を自作する。
モジュールを新規作成し、以下のコードを打つ。

Function rept(rep_chr As String, rep_time As Integer) As String
Dim i As Integer
Dim dummy As String

For i = 1 To rep_time
dummy = dummy & rep_chr
Next

rept = dummy
End Function

これでEXCELライクなrept関数の出来上がり。
次にクエリーで0埋めしたいフィールドで式ビルダを起動し
整形項目(ここの名は自分で考えて): rept("0",(4-Len([項目]))) & [項目]
と打ち込む。以上。

170 :名無しさん@そうだ選挙にいこう:05/03/06 00:59:26
169訂正

整形項目(ここの名は自分で考えて): rept("0",((表示したい桁数-Len([項目]))) & [項目]



171 :名無しさん@そうだ選挙にいこう:05/03/06 13:50:44
【.  目 的  】 オプショングループ(トグルボタン)選択時の再クエリ
【.  条 件  】 Win2000SP4 ACCESS2003
■試したけどうまくいかなかった処理
【. 概  要  】
下記のイベントプロージャを作成しました
1)
Private Sub ボタン1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
DoCmd.Requery ""
End Sub

2)
Private Sub ボタン1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
Me.Refresh
End Sub

【駄目な理由】
再クエリが実行されると、トグルボタンが元に戻ってしまう。
他のイベントで再クエリした場合は、トグルボタンは元に戻らないで正常動作する。
■これだけはやりました
>>1を読んだ】 はい
【Googleで調べた】 はい
【検索キーワードは?】ACCESS リストボックス 再クエリ


172 :171:05/03/06 14:56:25
自己解決しました
ボタンではなく、オプショングループの更新後に再クエリをかけたら
上手くいきました

お騒がせしてすみませんでした

173 :名無しさん@そうだ選挙にいこう:05/03/06 21:22:13
こんばんは、よろしくお願いします

【.  目 的  】
日付を管理番号にしたい。

【.  条 件  】
OS = WinXP
Office = officeXP

■試したけどうまくいかなかった処理
受注日フィールドの日付データを、管理番号として使いたいので
Me!管理番号 = Format(受注日, "yymmdd")
としました。

【駄目な理由】
自分のパソコンでは、日付2005/03/01が、管理番号に050301と
入ったのですが、他のOSもOfficeも同じXPのパソコンで動かしたら
クエリ式'Format([受注日],"yymmdd")'のこの関数は式では使用できません
このようなエラーが表示されてしまいます。

■これだけはやりました
>>1を読んだ】 はい・
【Googleで調べた】 はい
【検索キーワードは?】 access format クエリ yymmdd

174 :名無しさん@そうだ選挙にいこう:05/03/06 21:30:31
DateDiff関数で年数だけではなく、その年数のほか残りの月数や日数、

何年と何ヶ月何日というようにだせますか?

175 :名無しさん@そうだ選挙にいこう:05/03/06 21:41:58
>>173
コンパネ→地域と言語のオプション
日付の形式が違うんじゃない?
なんかそんな気がする

176 :名無しさん@そうだ選挙にいこう:05/03/07 00:11:17
>>174

無理だと思いますよ。
ただし、工夫(式の組み合わせ)すれば可能。

177 :名無しさん@そうだ選挙にいこう :05/03/07 05:24:20
教えて下さい。
日付表示で、外国表示の

7-Mar-05と表示させるのは、テキスト書式 = なんと
入れればよろしいか、お願いします。
Access2000です。


178 :名無しさん@そうだ選挙にいこう:05/03/07 05:32:51
Excelと同じ。

d-mmm-yy

179 :名無しさん@そうだ選挙にいこう:05/03/07 05:48:11
早速の返事、ありがとうございます。 177です。

180 :166:05/03/07 09:05:49
>>169-170
ありがとうございます。やってみました。
結果は・・・同じです。
クエリー上では前ゼロがちゃんと表示されているのに、
テキストにエクスポートすると前詰め後ろスペース・・・orz

テキストエクスポートウィザードまではゼロ付いてるのになぁ。
因みにCSVでやると前ゼロあります。
保存したエクスポート定義を使わずにやると前ゼロあります。だがしかしトンでもない所で切られてしまうのでアウト!


181 :166:05/03/07 10:09:33
自己レスです。

再度エクスポート定義を新規に作成してやってみたところ、うまく行きました。
しっかしこの定義、最初に作ったやつと全く同じなんだけどなぁ・・・(謎

182 :174:05/03/08 03:12:04
>176さん
ありがとうございます。
やっぱりそうですか。
月=DateDiff("m",x/y/z,x2/y2/z2)
if z>1 then
日1=DateSerial(x,y+1,o)-z+1
elseif 月=0 then
日=DateDiff("d",x/y/z,x2/y2/z2)
end if
日=日1+z2

この式はどうでしょうか。

183 :名無しさん@そうだ選挙にいこう:05/03/08 03:29:17
単純に

DateDiff("yyyy",[開始日],[終了日]) & "年" & (DateDiff("m",[開始日],[終了日]) Mod 12) & "ヶ月" & DateDiff("d",(Year([終了日]) & "/" & Month([終了日]) & "/" & 1),[終了日]) & "日"

でもいいんじゃない?
クエリの式ビルダーでもいけるから。

184 :176=183:05/03/08 04:23:09
>>182

ダメだ…。検証できん。
その式で閏年とか対応できるの?
あと年の処理がないような。
183の方は2004/1/1から2006年12/31まで検証してみました。
「0」の処理をどうするかですが、
期間の計算だから別に必要ないのか。


185 :174:05/03/08 06:50:08
>>183さん184さんありがとうございます。
開始日、終了日も月途中があり,
その分も日数に含む計算に
しなければならないので考えましたが・・・。
datediffは閏年はシリアル値で考えてくれて
いると思っていたのですが・・・。


186 :名無しさん@そうだ選挙にいこう:05/03/08 14:43:47
185

ごめん。日付の代入間違ってた。
182で大丈夫だね。



187 :名無しさん@そうだ選挙にいこう:05/03/08 20:03:49
すみません、教えてください!
バージョンは2000で、パソコンも2000です。

「A部門」「B部門」「C部門」と3枚のテーブルがあります。
3つのテーブルにはリレーションができているのですが、
このそれぞれのテーブルに、同じ項目名「残高」というものがあり、
その合計を出したいんですが、
クエリにもってくると、
「残高(A)」「残高(B)」「残高(C)」と3つならんでしまい、
合計数字を算出できません。
どのようにやったら、3枚のテーブルの残高の合計を、1つにできますか?

よろしくお願いいたします。。。。


188 :名無しさん@そうだ選挙にいこう:05/03/08 22:18:27
A部門.残高+B部門.残高+C部門.残高

189 :131:05/03/08 22:57:54
無事完成したのでご報告に参りました。

皆さんのおかげで実用に足るものが出来たようです。
本当にありがとうございました。

190 :名無しさん@そうだ選挙にいこう:05/03/09 16:29:29
【.  目 的  】 顧客データベースの世帯毎の集計クエリの作成
【.  条 件  】 Access2000 Windows2000
【. 概  要  】 現在、個人別に登録されている顧客の購入履歴を、世帯毎に
集計したいと思います。
顧客マスタに「世帯主No」というフィールドを設け、Nullの場合は世帯主、
顧客Noが入っている場合は、そのNoを世帯主とみなします。

テーブル構成は、簡略化すると以下のとおりです。

【顧客マスタ】 【購入履歴データ】
[顧客No]============[顧客No]
[世帯主No] [購入日]
[氏名] [金額]
[住所]

上記のテーブルから、下記のような出力結果が得られるクエリを作成したいのですが
どのような式を書けばよいのか、検索しても適当な解説が見つかりません。

【購入総額クエリ】
[顧客No]
[世帯主No]
[個人購入金額合計]
[世帯購入金額合計]


■これだけはやりました
>>1を読んだ】 はい
【Googleで調べた】 はい
【検索キーワードは?】 Access 世帯 集計 クエリ


191 :名無しさん@そうだ選挙にいこう:05/03/09 17:28:11
>>190
>顧客マスタに「世帯主No」というフィールドを設け、Nullの場合は世帯主、
>顧客Noが入っている場合は、そのNoを世帯主とみなします。

えーと、これは
Aさん Bさん Cさんが同じ世帯で、Aさんが世帯主だとすると

氏名   世帯主No
Aさん    Null
Bさん    AさんNo
Cさん    AさんNo

になるの?

だとすると、まず
世帯:IIf([世帯主No] is null,[顧客No],[世帯主No])
を作って、それをグループ化。
あとは金額をsumで合計すればok。
でもグループ化の邪魔になるから顧客Noは表示させられないか。

192 :名無しさん@そうだ選挙にいこう:05/03/10 03:48:56
お願いいたします。

出席チェックボックスがあるとします。
非連結フォームで、チェックボックスをチェックしたかどうかを
DBに入れたいんですが、

INSERT INTO TABLE名 (出席) VALUES 出席.value
では、チェックしてないときに、NULLがはいってしまいます。

INSERT INTO TABLE名 (出席) VALUES NZ(出席.value,0)
にしても、


追加クエリですべてのレコードを追加できません。

型変換エラーのため、、1個のフィールドをNULLに設定しました。また、0件の
レコードで、キー違反、0件のレコードでロック違反、0件のレコードで入力規則違反
が発生したため、レコードを追加できませんでした。

アクションクエリの実行を続行しますか?
このエラーを無視し、クエリの実行を続行するときは【はい】を
クリックしてください。
これらのエラーが発生する原因については、【ヘルプ】をクリックし、
表示されるヘルプ トピックを参照してください。


という、システムエラーが発生しました。

ググっても、解決できません。助けてください。

193 :名無しさん@そうだ選挙にいこう:05/03/10 16:14:15
【.  目 的  】 集計クエリの使い方を教えていただけますか
【.  条 件  】 winXP、access 2003
■試したけどうまくいかなかった処理
【. 概  要  】
VISITID  DAY  VALUE
 0     -9     10
 0     -8     15
 0     -1      12
 1      6      16
 1     7       20

このデータを使って、[VISITID]でグループ化して、DAYが最大のときの、VALUEを求めたい。
上の表から以下の表を作成したい。

VISITID DAY  VALUE
0      -1    12
1      7    20

【駄目な理由】 (動作状況など)
サブクエリで可能かと思ったのですが、ダメでした・・・

■これだけはやりました
>>1を読んだ】 はい
【Googleで調べた】 はい
【検索キーワードは?】 サブクエリ

194 :名無しさん@そうだ選挙にいこう:05/03/10 17:42:09
SELECT a.VISITID, a.MAX_DAY, b.VALUE
FROM (SELECT VISITID, MAX(DAY) AS MAX_DAY FROM テーブル GROUP BY VISITID) a
   INNER JOIN テーブル b ON a.VISITID=b.VISITID AND a.MAX_DAY=b.DAY


195 :名無しさん@そうだ選挙にいこう:05/03/10 18:45:37
>>192
なんかフォームの設計がヘンな悪寒

196 :名無しさん@そうだ選挙にいこう:05/03/11 10:18:44
【.  目 的  】 MDBが開かない
【.  条 件  】 使用OS=XP、ACCESSのバージョン=2002
■試したけどうまくいかなかった処理
【. 概  要  】 自分で作ったmdbです。
【駄目な理由】 mdbを開くと権限がないといわれる
■これだけはやりました
>>1を読んだ】 はい
【Googleで調べた】 はい
【検索キーワードは?】 権限 access2003 セキュリティー

197 :名無しさん@そうだ選挙にいこう:05/03/11 19:32:35
>>196
http://support.microsoft.com/default.aspx?scid=kb;ja;305542
この辺の問題じゃない?

198 :名無しさん@そうだ選挙にいこう:05/03/11 21:29:17
DateDiffってm、yでだすと実際まるまる1ヶ月経過していなくても
月や年を越えると1と認識するのですか?


199 :名無しさん@そうだ選挙にいこう:05/03/12 10:55:43
>>198



 や っ て み れ 

200 :名無しさん@そうだ選挙にいこう:05/03/15 12:44:53
なんで簡単に実験できることを、やってみもしないで質問するのだろうか。

201 :名無しさん@そうだ選挙にいこう:05/03/15 21:43:57
フォームのテキスト上で計算させた結果を,
テーブルのフィールドに入力したいのですがどうしたらよいですか。

202 :名無しさん@そうだ選挙にいこう:05/03/15 22:32:32
DoCmd.RunSQL かと。

203 :201:05/03/16 03:08:07
>>202さんありがとうございます。
VBAしかないですか。
単純に式ビルだの中でどうにかできないのですね。
後はクエリの組み合わせでしょうか。
1フィールドだけなので簡単の方にします。

204 :名無しさん@そうだ選挙にいこう:05/03/16 15:08:47
会社のDBにODCBで接続しています。
仕様の違いからか、日付のデータが全て20050101とテキスト型で保存されているようで、
そのままでは日付として利用することができません。
現在はright left mid+dateserialで無理矢理日付型に直しているのですが、
もっと簡単で軽い方法はないでしょうか?

205 :名無しさん@そうだ選挙にいこう:05/03/16 16:31:46
>>204

CDate(Format([日付文字列],"0000\/00\/00"))

206 :名無しさん@そうだ選挙にいこう:05/03/16 16:38:06
>>205
できました。ありがとう。ありがとう。

207 :名無しさん@そうだ選挙にいこう:05/03/16 22:03:01
余談
昔は、日付型ってのはDB間で仕様が違う場合が多かったので嫌われた事もあった。

実はただ単にDB設計者が古いCOBOL屋だっただけだったりして。
ただ、それは文字列ではなく数値のはず。 そうしないと計算できないから。

208 :名無しさん@そうだ選挙にいこう:05/03/17 18:32:45
日付を文字型にするのは間違いなく糞コボラーの仕業

209 :名無しさん@そうだ選挙にいこう:05/03/17 22:03:53
1月32日とか使ってなければ別にいいと思うけどね。

210 :名無しさん@そうだ選挙にいこう:05/03/17 22:32:56
げー糞コボラーって日付を文字列で持ってたのかよ。
何のために・・・?

211 :名無しさん@そうだ選挙にいこう:05/03/18 00:07:13
うちの取引業者からもらったデータベース、そんな感じだよ
VB製インターフェイス側で、生年月日空欄のまま登録OK押すと、
mdbの名簿テーブル生年月日フィールドには"00000000"って入るの

212 :名無しさん@そうだ選挙にいこう:05/03/18 00:32:13
【.  目 的  】 最適化がしたい
【.  条 件  】 使用OS:winxp ACCESS:xpから2003にバージョンアップ
■試したけどうまくいかなかった処理
【. 概  要  】 データベースの最適化
【駄目な理由】 最適化ができないエラーメッセージ
■これだけはやりました
>>1を読んだ】 はい
【Googleで調べた】 はい
【検索キーワードは?】 「access2003 最適化できない」

213 :名無しさん@そうだ選挙にいこう:05/03/18 01:32:52
コンボボックス(またはリストボックス)とコマンドボタンがあるとして、コンボボックス(またはリストボックス)で選択されている
値によって、コマンドボタンを押したときに違う処理を実行するには、やはりVBAを使わないといけないでしょうか
たとえば、

コンボボックスの値   コマンドボタンを押したとき
AAAAA          マクロ1を実行
BBBBB          マクロ2を実行
CCCCC          マクロ3を実行

という感じです。

214 :名無しさん@そうだ選挙にいこう:05/03/18 02:15:28
>>213

条件式(IF文やSELECT〜CASE文)ぐらいは必要だろうね。

215 :名無しさん@そうだ選挙にいこう:05/03/18 02:21:50
マクロだけでも出来ることは出来るけれどVBAでやるより数倍面倒

マクロ1に対応するマクロ1_1をつくる
アクション : マクロの実行
マクロ名 : マクロ1
実行回数 : 1
繰り返し条件式 : [Forms]![フォーム名]![リストボックス名]="AAAAA"

マクロ2に対応するマクロ2_1をつくる
アクション : マクロの実行
マクロ名 : マクロ2
実行回数 : 1
繰り返し条件式 : [Forms]![フォーム名]![リストボックス名]="BBBBB"

な感じで必要分だけ対応マクロをつくり
仕上げに、その対応マクロの全てを連続実行させマクロをつくる

アクション : マクロの実行
マクロ名 : マクロ1_1(実行回数と条件式は省略)
アクション : マクロの実行
マクロ名 : マクロ2_1(実行回数と条件式は省略)
・・・・・
で、このまとめマクロをコマンドボタンに当てる
いじょ

216 :215:05/03/18 02:31:17
何バカなこと書いてんだろ、俺
対応マクロなんていらないじゃん

アクション : マクロの実行
マクロ名 : マクロ1
実行回数 : 1
繰り返し条件式 : [Forms]![フォーム名]![リストボックス名]="AAAAA"

アクション : マクロの実行
マクロ名 : マクロ2
実行回数 : 1
繰り返し条件式 : [Forms]![フォーム名]![リストボックス名]="BBBBB"

・・・・・

これの連続実行マクロで充分じゃん

217 :213:05/03/18 02:56:11
ヘルプを見ながらVBAでやってみたんですが、うまくいきません

Private Sub ()

If リスト0.Value = "AAAAA" Then
GoTo 10
End If
If リスト0.Value = "BBBBB" Then
GoTo 20
End If
If リスト0.Value = "CCCCC" Then
GoTo 30
End If

10 DoCmd.RunMacro "マクロ1": GoTo 100
20 DoCmd.RunMacro "マクロ2": GoTo 100
30 DoCmd.RunMacro "マクロ3": GoTo 100

100
End Sub

なぜか、選択されている(反転している)リストの値にかかわらずマクロ1が実行されてしまいます・・・

218 :名無しさん@そうだ選挙にいこう:05/03/18 03:01:51
VBAっても、↓程度のことを書くだけだけど

Private Sub コマンド1_Click()
Select Case Me![リスト0]
Cese Is ="AAAAA"
DoCmd.RunMacro "マクロ1"
Cese Is ="BBBBB"
DoCmd.RunMacro "マクロ2"
・・・
End Select
End Sub

リスト内のデータが多い場合、同じようなことを何行も何行も書かなきゃならない。

それよりは、マクロ名のほうをちょっと変えて、"マクロAAAAA"、"マクロBBBBB" とかにすれば1行で済む

DoCmd.RunMacro "マクロ" & Me![リスト0]

ただ、マクロが何十個もあるようなら全部VBAでやっちゃったほうが手っ取り早い

219 :名無しさん@そうだ選挙にいこう:05/03/18 04:07:31
リストが多い場合なんかは逆に条件式なんか使わないのも手だね。

コンボボックスに1〜nのキー列を作りマクロの名前もキー列と対応するように
マクロ1〜マクロnという名前にすれば

Private Sub コマンド1_Click()
DoCmd.RunMacro "マクロ" & Me!コンボ1
End Sub

とかできたと思うよ。


220 :名無しさん@そうだ選挙にいこう:05/03/18 04:08:44
上に書いてあった…orz

221 :名無しさん@そうだ選挙にいこう:05/03/18 04:17:23
複数の人で同じ入力はできますか?
出来るけどやめた方がいいのでしょうか。


222 :名無しさん@そうだ選挙にいこう:05/03/18 21:46:13
なんで本を読んで作ると余裕で出来るのに
自分で作りはじめると、パラメーターを入れてくださいて画面ばっか出る?

223 :名無しさん@そうだ選挙にいこう:05/03/18 22:43:50
>>222
自分の心に聞くしかないだろう……

224 :217:05/03/18 23:39:59
>>218-220
なるほど、マクロ名をちょっと工夫すればいいんですね・・・

Private Sub コマンド1_Click()
  DoCmd.RunMacro "マクログループ." & リスト0.Value
End Sub

マクロ名=リストの値にしてみました。結果はうまくいき、行数もたったこれだけで済みました。
いちいち分岐にIF文を書かなくて済むし、後からマクロやリストの内容を増やしてもコードを書き換える必要もないし。
大変参考になりました。どうもありがとうございます。

225 :名無しさん@そうだ選挙にいこう:05/03/19 00:05:17
データベースまたはプロジェクトに、ファイル`JSCKLIST.OCX` version 1.1. を参照する切断された参照が含まれています。
データベースまたはプロジェクトに、ファイル`JSBTN.OCX` version 1.1. を参照する切断された参照が含まれています。

特定のデータベースを開き、コマンドボタンを押すと上記のようなエラーが出てしまいます。
データベースを開いて最初にボタンを押したとき出て、それ以降は出なくなりますが、再度閉じてから開くとまた最初だけでます。

コマンドボタンもマクロでフォームを開くだけの単純な物です。

環境は
access2003 sp1
windowsXP pro SP2

googleで調べてみたのですが、よく分かりませんでした。

226 :名無しさん@そうだ選挙にいこう:05/03/19 09:43:31
>>225
JS…ジャストシステム謹製コントロールかな?
そのデータベースのモジュールにそれっぽい参照があったらそれを削除、
もしくは一太郎をインストールしてみるってのでどうだ。

227 :225:05/03/19 10:46:38
>>226
JSってJUSTSYSTEMだったんですね
それっぽい参照を探してみます。
ダメだったら一太郎インストールしてみます。

たしかにエラーのでないクライアントマシンは一太郎が入っていたような気もします。

まだ試していないですが、アドバイスありがとうございます。

228 :名無しさん@そうだ選挙にいこう :05/03/19 11:06:06
【目的】最適化・修復・圧縮について
【条件】Windows95、ACCESS97
【概要】VBよりRepairDatabase,CompactDatabaseを行った
    ACCESSのデータベースが、LHUT32で圧縮できません。
    (lzhファイルはできるのですが、圧縮率100%となり、容量が減りません)
>>1を読んだ】 はい
【Googleで調べた】 はい
【検索キーワードは?】CompactDatabase RepairDatabase

宜しくお願いします。m(_ _)m

229 :名無しさん@そうだ選挙にいこう:05/03/19 13:20:04
OS : WindowsXP
Access : Access2000

自分で作ったデータベースを人にあげようと思ったんですが
データを消したうえで、オートナンバーのフィールドが最初の番号から
始まるようにする方法ってありますか?
データベースの構造だけあげたいんですが。


230 :名無しさん@そうだ選挙にいこう:05/03/19 13:36:02
たしかフィールドを一旦削除しペーストし直せばいいと思ったが・・・

231 :229:05/03/19 13:49:30
>>230
オートナンバーになってるフィールドだけ
フィールドごと削除して作り直せばいいんですね。
ありがとうございます。

232 :229:05/03/19 14:00:16
えーやってみたんですが、、、
少なくないテーブルで、オートナンバーのフィールドを主キーにして
リレーションも設定していたので、当然のことながらそういうテーブルでは
フィールドごと削除ができませんでした。
これしかないのであればリレーションシップもひとつずつ直して
やってみようとは思うんですが、何か他の方法はないですかね、、、すみません。

233 :名無しさん@そうだ選挙にいこう:05/03/19 14:02:45
>>232
フィールド削除じゃなくて、テーブルの構造のみコピー。
データそのものはいらないんだったらそれだけでいいじゃん。

234 :229:05/03/19 14:13:25
>>233
インポートでテーブル構造のみを入れたらできました。
初歩的な質問かと思いましたが、答えて頂きありがとうございました。

235 :名無しさん@そうだ選挙にいこう:05/03/19 14:49:23
すみませんがおしえてください。
クエリでテーブルを連結表示して入力したのだけど、
入力が出来るクエリと出来ないクエリがあります。
なんででしょうか?

またフィールドデータをクエリにより
&で一つのフィールドデータにし、
そのフィールドから連結したクエリに入力
(&前のフィールドおよびクエリで連結したそのほかのテーブル)
したいのですが、これもムリですか?

236 :名無しさん@そうだ選挙にいこう:05/03/19 22:18:34
> 入力が出来るクエリと出来ないクエリがあります。
その連結が 1:1 か、 1:n かの違いかと思われ

2番目の質問は
・ 表示 2つのフィールドを 連結して表示
・ 入力 フィールド入力値をバラして2つのフィールドへ
って事か? すなわち [姓 & 名] みたいな事をやりたいのか?

基本的に演算フィールドは編集できないと思われ。
やるんだったらフォームに非連結フィールドを作って、
イベントハンドラにロジックを書く。 異常値の処理とか面倒だがな。
俺ならやらない。

237 :235:05/03/20 02:53:26
ありがとうございます。
1:多だと、連結先が特定できないので
入力出来ないということですね。
注意してみます。

2番目のは[姓 & 名]みたいなことです。
イベントハンドラとはVBAで、
そのフオームの名のフイールドに入力されたとき、テーブルに
updateさせるということでしょうか?
ちょっと研究してみます。
またよろしくおねがします。

238 :名無しさん@そうだ選挙にいこう:05/03/21 00:22:31
すでに解決済みみたいだけど
オートナンバー戻すのって、べつに新規mdbにインポートとかテーブルのコピーとか
しなくても、ただデータ全削除して最適化すればいいんじゃなかったっけ

いや、Ac2000しか使ったことないんで他は知らないけど

239 :229:2005/03/21(月) 13:00:33
>>238
試しにコピーしたデータベースでやってみたらできました。
そういう簡単なやり方もあったんですね。
今後必要なときは使ってみたいと思います。
ありがとうございました!

98 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)