トップページ⇒tech
876コメント334KB

Access使い集合! Ver2.0

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
前スレ
http://pc3.2ch.net/test/read.cgi/tech/1005078204/
0002デフォルトの名無しさんNGNG
というわけで、いきなり質問です

これからACCESSで開発をはじめようと思っています
フォームは非連結で行う個所があるので、
プログラム上でDB接続の記述をしないければいけないわけですが、
これからやるなら、ADOですよね?
DAOは過去の産物と聞きましたが・・・

皆様の参考意見を聞かせてほしいです。
0003デフォルトの名無しさんNGNG
好きにしろ。
0004デフォルトの名無しさんNGNG
おれは、ADO使いだ
0005デフォルトの名無しさんNGNG
どう考えてもADOに未来はないだろ。
北海道も余計なものに金使ってしまった。
0006デフォルトの名無しさんNGNG
>>5
何か面白いこと言ってるんだろうけど、
俺にはよく分からないな。
0007デフォルトの名無しさんNGNG
>>2
「行う個所があるので・・・」と書いてるから仕事なんだろうけど
そんな事じゃ先が思いやられるなあ(藁
二つ試してみて開発と配布の両面から自分で判断しなよ。
0008デフォルトの名無しさんNGNG
>>6
AirDoかなぁ?
0009デフォルトの名無しさんNGNG
>>1
で、ここは何のためのスレだ?厨房向け質問スレなのか?
それくらい書いとけよ、アホ
0010デフォルトの名無しさんNGNG
もともとは単発質問のクソスレだったんだがな・・・

>>2
「これからやるなら、ADO」は否定しないが、
ACCESSにはDAOこそが相応しいと漏れは思う。
00112NGNG
どうもです。
今回質問したのは、手持ちのVBA参考書には今後はADOと書いてあるのに、
いろんなスレではDAOも使ったほうが・・というのをチラホラ見たからです。
それでどちらを使えばいいのか迷ってしまって。

>>7
仕事です。まぁ、個人企業の社内システム担当者が社内向けに作るシステムというか。
設計から全部自分のみでやっています。
だから、「行う個所」、というか、「行おうと思っている個所」、が正しいですね。
前5年ほどいたソフト会社が、参考書に「ADOいい!」ってあれば、それ使えばいいや!
という会社で、現在もそのスタンスでやってるもので・・・・。
一応ADOで進めてますが、時間があればDAOも試してみます。

>>1
書いて無かったですね。すみません、
まぁ厨向けというか、初心者向け質問スレでいいのでは?

>>10
ありがとうございます。参考にします。
0012デフォルトの名無しさんNGNG
ADOよりDAOの方が良いと逝ってる香具師は
ADO使えないんだる
0013デフォルトの名無しさんNGNG
判断基準は 使える/使えない だけなんですか?
00147NGNG
>>11
小規模なLANを考えているなら、ADOがいいと思うよ。
データベース自身を他のもの(SQLServerとか、MYSQLとか)に変えたときでも
対応が楽。
スタンドアロンでワープロ文書みたいに使いたいならDAOのほうが
むしろ楽かもね。
0015デフォルトの名無しさんNGNG
ついでに、マルチユーザで使う計画があるならエンジンもMSDEを使っとけ。
0016デフォルトの名無しさんNGNG
あげ
0017デフォルトの名無しさんNGNG
age
0018デフォルトの名無しさんNGNG
>>DAO→初心者向け
>>ADO→(略

漏れは拡張性考えてADOだがな。
0019デフォルトの名無しさんNGNG
なんだ初心者向けって。
VBとVCを同じ土俵で勝負させてどっちが優れてる劣ってるって言ってる厨房と同レベルだ。
0020デフォルトの名無しさんNGNG
sqlで、insert文で日付を扱うときに
日付を#で囲まなければなりませんが、
日付をnullでinsertするときはどのように
したらいいのでしょうか?
0021デフォルトの名無しさんNGNG
>>20

> insertするときはどのように
> したらいいのでしょうか?

女の同意を得てからinsertする。(同意なしに強引にinsertすると、タイーホされる)

insertする前に、ちゃんと濡れさせておく。前戯なしにいきなりinsertするのは×

- 以上 -
0022デフォルトの名無しさんNGNG
ビジネスソフト板の「ACCESS総合相談所 その5」スレが無くなってるけど
どうなってんの?
0023デフォルトの名無しさんNGNG
>>22

> ビジネスソフト板の「ACCESS総合相談所 その5」スレが無くなってるけど
> どうなってんの?

削除依頼出すますた
0024デフォルトの名無しさんNGNG
え! なんでまた
暇な時いつも見てて自分の知り得る範囲なら
教えてやれてたのに。
0025デフォルトの名無しさんNGNG
嘘を嘘と(略
つぅかあるべよ
0026デフォルトの名無しさんNGNG
>20にマジレスしていいのかな・・・
Nullとは、「何も入れた事が無い」って事を表す値だって事はわかる?
0027デフォルトの名無しさんNGNG
ここも教えて君が集うスレになるの?
0028デフォルトの名無しさんNGNG
ACCESSのフォーム上であるような「住所を入れたらカナを勝手に入力」な機能(オートコレクト?)
をコード上で再現したいんですが、どうやったら可能なんでしょうか?

というのも今作ってるのはADP+MSDEなので、
オートコレクト機能がないのです;;

何かご存知の方、よろしくです

002920NGNG
>>26
Dim rs As New ADODB.Recordset
Dim sql as string

sql = "insert into DB1" _
& "(依頼番号, 依頼日)" _
& " values ('" & rs![依頼番号] & "' ,'" & rs![依頼日] & "' );"

のようにするとまず日付は
"#" & rs![依頼日] & "#" のようにして文字列で囲まないと
いけないですよね?
もしレコードに日付のデータが無かったときは
##とかになってエラーが起きるのでレコードに日付がないときは
nullをいれたいというか、フィールドになにもいれたくないんです。

if文やCase文でSQL文の場合わけをすれば解決するかも知れませんが、
日付のフィールドがたくさん合った場合に凄く面倒になるのでなるべ
く日付型のフィールドにnullをいれたいのです
0030デフォルトの名無しさんNGNG
>>27
>ここも教えて君が集うスレになるの?

スレ建ての主旨に沿うとそういうことになるなぁ
まぁ>>1が責任もって面倒みりゃいいんだが、逃げたもよう(w

# ム板にまで初心者向けスレはいらないと思う
0031デフォルトの名無しさんNGNG
>29
INSERTするのにSQLじゃなくRecordset使ってみるトカ。
0032デフォルトの名無しさんNGNG
>>31

性能下げてどーする。
0033デフォルトの名無しさんNGNG
あくまで一つの案よ。
今のところ、速度は問題になってないんだし。
0034デフォルトの名無しさんNGNG
>>29
判定文くらいかけるだろう?
0035デフォルトの名無しさんNGNG
あげ
0036デフォルトの名無しさんNGNG
Accessで作ったデータベースをJAVAで使いたいんですが
いちいちコントロールパネルのODBCで設定するのが
面倒なので自動でやる方法ってありませんか?
0037デフォルトの名無しさんNGNG
>>36 無い。市ね。
0038デフォルトの名無しさんNGNG
Accessで、Oracleのrowidのような機能ってありますか?
0039デフォルトの名無しさんNGNG
>>38
オートナンバー用意して主キーにしとくぐらいかな。

ま、mdbはユーザーが主キーの設定しなくても、内部で用意しちゃうけど。
それがROWIDと言えなくもない。
004038NGNG
>39
やっぱりそうですか。
別スレで紹介されていた、重複行を削除するSQL
delete from tbl a
where a.rowid > (
 select min(b.rowid)
 from tbl b
 where b.value = a.value
)
って奴をAccessでも使えないかなと思ったのですが。
今回はテーブルレイアウト変更不可という前提があるので無理ポですね。
残念。
0041デフォルトの名無しさんNGNG
顧客管理DBを作っているんですが、
個人マスタに会社コードと社員コードの項目があります。
で、社員コードは複数の会社でだぶってしまうことがあるので、
会社コードを社員コードの二つを主キーにしようかと思っているんですが、
二つを主キーにするのって、管理上いかがなものなんでしょうか?

それとも、別途会社コード+社員コードのフィールドを別途設けて
それの項目のみを主キーにしたほうがいいんでしょうか?

ACCESSというより、データベース管理的な質問になってしまいましたが、
詳しい方のアドバイスをヨロシクお願いします。
0042デフォルトの名無しさんNGNG
>>41
まぁ、データベースの入門書でも読みなされ。
0043デフォルトの名無しさんNGNG
>41にピッタシカンカンな所みっけ
ttp://www.mahoutsukaino.com/ac/ac97/basic/mainkey.htm
0044デフォルトの名無しさんNGNG
ACCESS2000を使っています。
ACCESSのレポートをそのままの表示で保存(データ化)したいんですが、
何か方法はありますか?

004544NGNG
すみません、エクスポートでリッチテキスト出力でできました。
お騒がせしました

ただ、サブレポートまで出力してくれない・・・(;´Д`)

0046デフォルトの名無しさんNGNG
AccessのVBAで処理時間をミリ秒まで計測したいのだけど、やり方教えて。
ちなみに環境はwindowsXP + Access2002

GetTickCount()を呼び出すらしいけど、Win32API使ったこと無い。

Access97 + Windows95で問題なく動いていたマクロがXP+2002になったとたん処理が激遅になったので・・
0047デフォルトの名無しさんNGNG
API名まで分かってるならいくらでも探せるだろうがハゲ。
ゲーム系のサイトでも当たって見ぃ。
0048デフォルトの名無しさんNGNG
解決しマスタ。失礼。
0049デフォルトの名無しさんNGNG
>>46
Timer関数じゃだめなのか?
0050デフォルトの名無しさんNGNG
adpで開発してます。
mdb時にはサブフォームを多様してたんですが、
先輩からあまりサブフォームは好ましくないと聞きました。

便利なのでadpでも使おうかなと思ってるんですけど、
あまり多様すると問題があるんでしょうか?
0051デフォルトの名無しさんNGNG
サブフォームよりも君の漢字能力に問題があると思うな。
005250NGNG
>>51
ああ、確かに漢字間違えてますね。失礼しました。
というかただの変換ミスだったんですけど。
0053デフォルトの名無しさんNGNG
同期がとりづらいとか、細かいところ手が届かないとかかな?
見出しをメイン、明細をサブとかあまりお勧めしない。使ってる人多いと思うけど。
つーか気にするならVBで作れよと思った。
0054デフォルトの名無しさんNGNG
>53とも被るが、別モジュールになるから保守が大変って事じゃないのか。
VBAロジックにコメントと共に書いてくれるならともかく、プロパティの設定だけで
ゴチャゴチャやられちゃうとメンテする人は地獄を見る可能性高し。
0055デフォルトの名無しさんNGNG
お助けください。Access2000でDAO使用です。
ExcelシートにAccessのクエリをエクスポートしたいのですが、
どうすればよろしいでしょうか。

最初は
DoCmd.TransferSpreadsheet acExport, , "クエリ名", FileName, True
でやろうとしていましたが、同じファイル名の同じシートが存在していると
オブジェクトがかち合ってしまいエクスポートできません。
で、CreateObjectを使ってExcelを操作し、
Excel側からAccessのクエリを参照する方法を探しているのですが…。
ご存知の方はいらっしゃいませんでしょうか。
0056デフォルトの名無しさんNGNG
>>55
どうしてファイル名を変えようとは思わないの?
0057デフォルトの名無しさんNGNG
Accessってフォーム上で
ドロップダウンリストボックス使えないんですね。
で、いろいろプロパティをいじって代用方法を考えてるんです。
コンボボックスで選択は出来るが
キー入力はできないようにするだけなんですけど…。
うーん。やっぱダメなのかな?
0058もまずにパピコNGNG
>>57
漏れはキー入力できないようにしたコンボボックス=ドロップダウンリストボックス
だと思ってた。違うのか?
005957NGNG
>>58
えーと、ヘルプによると正式な「ドロップダウンリストボックス」なるものは
データアクセスページにしか存在しないとのことです。

それで、キー入力できないようにするにはどうすればいいかと。
Locked/編集ロックをYesにすると選択が出来なくなってしまいますし。
テーブルをレコードソースとして用意し、コンボボックスで選択させ、
そして選択された文字列(textプロパティ)の値を変数に入れる。
というのをやりたいんです。

ものすごーく基本的なとこで躓いてるのはわかるんですが…。
未熟者にご教授くだされ。ちなみに、Access2000です。
0060もまずにパピコNGNG
>>59
やっぱり、コンボボックスを貼り付けてプロパティ変えたらリストボックスとして使えるハズ。
SourceTypeとか色々いじくってみて
006157NGNG
>>60
ご返事どうもです。
テーブルを直にレコードソースに指定するのではなく
RowSourceTypeを値リストにして、値集合ソースをいじる方向でやってみてるのですが…。
やはりキー入力を受け付けないようにするには何かが足りない…?
すみません、もう少しヒントを下さい。
0062ななしNGNG
Access2000で、カレントmdbファイル内にあるテーブルのフィールドが
オートナンバであるかどうかをチェックしようとしています。DAOを使用しています。

オートナンバーのフィールドのプロパティである
NewValuesプロパティ の Increment はどのようにしたら取得できるのでしょうか?

フィールドのプロパティで、NewValuesプロパティが取得できないので
Attributesプロパティ の、定数 16(dbAutoIncrField)でオートナンバかどうかが
判るかと思ったのですが、オートナンバのフィールドであっても違う値が返って来ます。

オートナンバのプロパティの取得方法について、どなたかお解りになる方
いらっしゃいませんか?
006362NGNG
ちなみに、下記のようにして確認しました。
-----------------------------------------------------------
Function test()
Dim db As DAO.Database, tbf As DAO.TableDef, fld As DAO.Field
Dim pro As DAO.Property, idx As DAO.Index
Set db = CurrentDb()
Set tbf = db.TableDefs("T_test")'1列目にオートナンバ型のフィールド有

'テーブルのフィールドを取得
For Each fld In tbf.Fields
Debug.Print fld.Name
Debug.Print fld.Type

'フィールドのプロパティを取得
For Each pro In fld.Properties
Debug.Print pro.Name
Debug.Print pro.Type
Next pro

'インデックスを取得
For Each idx In tbf.Indexes
Debug.Print idx.Name
Debug.Print idx.Unique
Next idx
Next fld

Set idx = Nothing:Set pro = Nothing
Set tbf = Nothing:Set db = Nothing
End Function
-----------------------------------------------------------
0064デフォルトの名無しさんNGNG
>>57

↓こんな感じでできる。

Public Const vbShiftMask        As Integer = 1   'キーコードマスク定数。
Public Const vbCtrlMask         As Integer = 2   '    〃

Public Sub cboKyDwn(ByRef KeyCode As Integer, _
          ByRef Shift As Integer, _
          Optional ByVal blnAlowDelete As Boolean = True)
  
  'blnAlowDelete引数が指定されている場合、[Delete],[BackSpace]による削除を禁止する。
  If Not blnAlowDelete And (KeyCode = vbKeyDelete Or KeyCode = vbKeyBack) Then
    KeyCode = 0
    Exit Sub
  End If

  'クリップボードへのCopyができるように。
  '[Ctrl]+[C], [Ctrl]+[Insert]
  If Shift And vbCtrlMask Then
    If (KeyCode = vbKeyC) Or (KeyCode = vbKeyInsert) Then Exit Sub
  End If
(改行が多過ぎてカキコできないwので、次の発言に続く)
0065デフォルトの名無しさんNGNG
>>64の続き

  '[↑][↓]、特殊キー以外のキーを入力させない。
  Select Case KeyCode
    Case vbKeyUp, _
       vbKeyDown, _
       vbKeyTab, _
       vbKeyEscape, _
       vbKeyReturn, _
       vbKeyF11, _
       vbKeyDelete, _
       vbKeyPrint, _
       vbKeyShift, _
       vbKeyBack, _
       vbKeyPageUp, _
       vbKeyPageDown, _
       vbKeyRight, _
       vbKeyLeft
    Case Else
      KeyCode = 0
  End Select
End Sub

注意点 :
(1) vbShiftMask、vbCtrlMask はVBにしかない定数。(Accessでも同等の機能を使うため、ユーザー定義)
(2) すべてのキーコードを無効化すると使い勝手が悪くなる。要求仕様に応じて、無効にするキーコードを
  適宜選択すること。
006657NGNG
>>64-65
大変ありがとうございます。
勉強させていただきます。
0067デフォルトの名無しさんNGNG
>>66
書き忘れたが、>>64のユーザー定義関数は、各コンボボックスの
ComboBox_KeyDown イベントから呼び出す必要がある。
サブクラス化やSendMessageが使用できれば、もっとエグイ技も
使えると思うが、残念ながらAccessのコントロールは、Window
ハンドルを隠蔽しているので、これはムリ。

- 以上 -

0068デフォルトの名無しさんNGNG
AccessVBAについての質問です。
データベース(mdb)が起動された時に
渡されたコマンドラインを取得するにはどうすればいいでしょうか?
また、起動されたファイル名の絶対パスを得るにはどうすればいいでしょうか?
ヘルプをあさったのですが、それらしい記述を見つけることができませんでした。
よろしくお願いします。
0069デフォルトの名無しさんNGNG

>>68

> 渡されたコマンドラインを取得するにはどうすればいいでしょうか?

Command を調べろ。

> また、起動されたファイル名の絶対パスを得るにはどうすればいいでしょうか?

CurrentDb().Name

> ヘルプをあさったのですが、それらしい記述を見つけることができませんでした。

努力不足。氏ね。
それから、バージョンもちゃんと書け。
007068NGNG
>69
ありがと。
参考になったよ。

>バージョンもちゃんと
バージョンにも依存するような関数なんだ。
へぇ。
0071デフォルトの名無しさんNGNG
↑!!!!!!!!!!!!!!!!!!!
0072デフォルトの名無しさんNGNG
Access2000のデザインビューで説明欄がありますが、
これをAccessVBAから取得することって可能でしょうか?
DaoのTableDefオブジェクトでは無理そうなので
他をあたっていますが見つかりません。
もし取れればテーブル定義ドキュメント楽に作れるんですが・・・
0073デフォルトの名無しさんNGNG
>>70
Ver2.0では 無理かも(w
0074デフォルトの名無しさんNGNG
>>72
http://www.ruriplus.com/msaccess/faq/faq_002.html
こちらのでどうですか?
0075デフォルトの名無しさんNGNG
ttp://www.h3.dion.ne.jp/~kakih/room5/ooo7.html
>なんと、Access2000のテーブルには、VBからアクセスできないのである

違うよね?
0076デフォルトの名無しさんNGNG
>>75
元記事ではODBCのみでしか接続できないとか書いてるが、
DAOもADOも使える。アホVB厨だろ
0077デフォルトの名無しさんNGNG
当時は出来なかったとか...?ンな訳無いか。
0078デフォルトの名無しさんNGNG
>>74
ありがとうです〜!おかげでできました。
これでドキュメントもラクチンです。
0079デフォルトの名無しさんNGNG
Dim wrkJet As Workspace
Dim dbsNorthwind As Database
Dim rstTemp As Recordset

Set wrkJet = CreateWorkspace("", "admin", "", dbUseJet)

Set dbsNorthwind = wrkJet.OpenDatabase("C:\Documents and Settings\XXX\My Documents\幼稚園\YYY.mdb")
Set rstTemp = dbsNorthwind.OpenRecordset("テーブル", dbOpenDynaset, dbReadOnly)

  とHelpにあるままやったのですが、最後の行で型が違いますといわれます
  VBAから他のDatabaseのレコードセットを取得させたいのですが・・・
  他にも色々回避方法はあると思いますがこの形で取得できるやりかたをご教授願いマス
0080デフォルトの名無しさんNGNG
>>79

> 最後の行で型が違いますといわれます

Dim rstTemp As Recordset
↓
Dim rstTemp As Object
0081デフォルトの名無しさんNGNG
> 最後の行で型が違いますといわれます

Dim rstTemp As DAO.Recordset
と宣言するか、
または参照設定でDAOをADOより上位にする
008279NGNG
>80-81
ありがとうございます
もうちょっと考えればわかりそうなものですよね、思慮がたりませんでした
精進しマス
0083デフォルトの名無しさんNGNG
テーブルの最適幅をVBAで自動的に変更する方法おしえてください

DoCmd.OpenTable "テーブル名"
RunCommand acCmdColumnWidth

じゃできませんでした。
0084デフォルトの名無しさんNGNG
>>83
DoCmd.SetWarnings False
DoCmd.DeleteObject acTable,"テーブル名"
DoCmd.SetWarnings True
0085デフォルトの名無しさんNGNG
>>84 はネタ。

テーブルが消えてしまうので要注意!
0086デフォルトの名無しさんNGNG
ADPにて(もちろんテーブルはSQL)Dfirstを使用すると
「OLEオブジェクトのプロパティまたはメソッドにアクセスするときにエラーが発生しました」と出て動いてくれません
ADPではDfirstはできないのでしょうか?
0087デフォルトの名無しさんNGNG
>>86
どこで使おうとしてんの?
フォーム、レポート、マクロ、コードなんかだと普通に使えてるけど。
テーブル定義、ビュー、ストアド、関数なんかでは当然使えない。
008886NGNG
関数です
関数の中では使えないですね。自分で相応のものを作らないとダメかな
0089デフォルトの名無しさんNGNG
>>88
Select Top 1 .... From .... Order by ....
じゃだめなん?
0090デフォルトの名無しさんNGNG
あげ
0091デフォルトの名無しさんNGNG
ADPで漏れも
ADPからmdbのテーブルをODBCを使わずにリンクさせることってできませんか?
0092デフォルトの名無しさんNGNG
Paradoxからへインポートしたいんですけど

DoCmd.TransferDatabase acImport, "Paradox 4.x", _
"C:\PLIB.db", acTable, , "PLIB"

とすると、

パス'C:\PLIB.db'は正しくありません。パス名に間違いないことと、
ファイルが置かれたサーバーに接続していることを確認してください。

というエラーが出てしまいます。

Paradoxからのインポートは出来ないんでしょうか。


0093デフォルトの名無しさん NGNG
同じテーブル名同士で一つ前のデータと現在のデータを和を求めたいんですが
どうすればできるでしょうか?
ご指導よろしくお願いします
0094デフォルトの名無しさんNGNG
>93
ニホンゴ、ワカリマスカ?
0095あNGNG
>93
同じテーブル名同士?
アクセスに同じ名前のテーブルは置けない。
よって意味不明。
009693NGNG
>94,95
 不適切な書き込みですみません。再度書き込ませていただきます。
 たとえば、日付、数量、単価、合計を管理しているテーブルで

 日付     数量    単価   合計
2002/11/05    4     500   2000
2002/11/06    2     500   3000
2002/11/07    5     500   5500

というふうに表示させたいんです。合計は前日のデータと今持っているデータ
の和を求めて表示させいのですが、どうすればいいでしょうか?

0097デフォルトの名無しさんNGNG
「累計」って知ってる?あ、知らない。
んじゃまずこの言葉の意味を調べて。
その後は適当にぐぐってみればいくらでも答えは見つかる。
0098デフォルトの名無しさんNGNG
あげ

>>96
SELECT t1.日付, t1.数量, t1.単価, Sum(t2.合計?) AS 合計
FROM テーブル AS t1, テーブル AS t2
WHERE t2.日付 <= t1.日付
GROUP BY t1.日付, t1.数量, t1.単価
ORDER BY t1.日付;
009993NGNG
>97,98
 アドバイスのおかげでうまくできました。
 ありがとうございます。
0100デフォルトの名無しさんNGNG
age
0101デフォルトの名無しさんNGNG
>>34
かなり前の話ですみませんが、私も疑問に思ったのでおしえてください。
日付型にNullを入れるとき判定文で分けてたのですが、
一度日付を登録した後、修正のときにフィールドを消してNullにすると
条件文で登録をかけなくしてしまっているのでデータの修正ができなくなってしまいました。
このような場合はどうしているのですか?
(意味分かっていただけたでしょうか?)
0102デフォルトの名無しさんNGNG
帳票フォームでレコードセットをテキストボックス等に
レコードの数だけ流し込む(レコードの数だけ行が増える)のは
フォームのデータコントロールにクエリー等をセットして、
各テキストボックスのデータコントロールにフィールド名を
指定してやればできますが、これを非連結で処理したいのですが
可能なのでしょうか?
もしくは非連結ではなく、DBサーバー上のものを非連結でなく、フィールド指定できるのでしょうか?

Access2002では簡単に上記のことができるらしいのですが
開発環境はAccess97なのです。。
ご存じのかたいらっしゃったらご教授願います。
0103デフォルトの名無しさんNGNG
>>102
枠だけ印刷したいとかって意味?
なんか意味不明なんですが・・・。非連結でないと駄目な理由は?

レポートだと、VBAで制御すれば非連結でも可能ですが、
そもそも、非連結で何をしたい?計算のみ?
一番簡単な方法は、ワークのテーブルを作成して項目を連結させた
らいいんじゃないかな。
0104デフォルトの名無しさんNGNG
>>101

日本語がヘタクソ。
小学校からやり直してこい。

[宿題]
つぎのことばのいみをこくごじてんでしらべなさい

・わかりやすい
・具体的
・論理的
0105デフォルトの名無しさんNGNG
日本語もそうだが、それ以前に本人自身何をしたいのか分かってないんじゃねぇの?
0106101NGNG
>>104,105

うまく説明できなくてすみません。まず、下のような形で登録したものを・・・

' 見積ヘッダー部の追加登録(見積日がNullかどうかで処理を分ける。)

If Me.見積日 = "" Or IsNull(Me.見積日) then

strSQL = "INSERT INTO T_見積 (見積番号,見積者,見積日,顧客コード,顧客名,担当,"
strSQL = strSQL & "合計,消費税)"
strSQL = strSQL & " VALUES ('" & Me.見積番号 & "','" & Me.見積者 & "',CONVERT(datetime,'" & Me.見積日 & "'),"

Else

strSQL = "INSERT INTO T_見積 (見積番号,見積者,顧客コード,顧客名,担当,"
strSQL = strSQL & "合計,消費税"
strSQL = strSQL & " VALUES ('" & Me.見積番号 & "','" & Me.見積者 & "'"

End If

strSQL = strSQL & "'" & Me.顧客コード & "', '" & Me.顧客名 & "', '" & Me.担当 & "'"
strSQL = strSQL & "CONVERT(money,'" & Me.合計& "'),CONVERT(money,'" & Me.消費税 & "') ;"
cn.Execute strSQL, , adCmdText
0107101NGNG
修正するときに下のような形で行うと・・・

' 見積ヘッダー部の更新登録(見積日がNullかどうかで処理を分ける。)

If Me.見積日 = "" Or IsNull(Me.見積日) then

strSQL = "UPDATE T_見積"
strSQL = strSQL & " SET 見積者 = '" & Me.見積者 & "',見積日 = '" & Me.見積日 & "',"

Else

strSQL = "UPDATE T_見積"
strSQL = strSQL & " SET 見積者 = '" & Me.見積者 & "',見積日 = '" & Me.見積日 & "',"

End if

strSQL = strSQL & "顧客コード = '" & Me.顧客コード & "',顧客名 = '" & Me.顧客名 & "',"
strSQL = strSQL & "担当 = '" & Me.担当 & "',"合計 = CONVERT(money,'" & Me.合計 & "'),"
strSQL = strSQL & "消費税 = CONVERT(money,'" & Me.消費税 & "')"
strSQL = strSQL & " WHERE 見積番号 = '" & Me!見積番号 & "' ;"
cn.Execute strSQL, , adCmdText

最初に見積日を入れてINSERTして、変更があったときに見積日を
フォーム上で消してUPDATEすると、条件分岐で見積日がNullのときは
更新されないので、当然前に登録した見積日が残ってしまいます。
こういう場合どうすればいいかなぁと・・
(これでも分かってもらえないのだろうか?)
0108102NGNG
>>103
レスありがとうございます。
説明がかなり変でスミマセンでした。。w

>一番簡単な方法は、ワークのテーブルを作成して項目を連結させた
>らいいんじゃないかな。

上記のでバッチリいけました。
DBサーバーからテーブルデータをクライアントマシンのワークテーブルに持ってきて
帳票フォームでデータ内容を一覧表示することができました。
ありがとうございます。
0109デフォルトの名無しさんNGNG
>>106

CONVERT 関数があるということは、DBはSQL Server または MSDE ってこと?
Connection.Execute とか、adCmdText という記述があるってことは、ミドル
ウェアはADO + OLEDB?
その辺も書いといた方がいいんじゃないの?

どうでもええけど、If節とElse節の記述が反対と違うの?

>>107
If節とElse節がおなじだけど、アホちゃうの?
条件分岐の意味わかってる?
(数10行のSQL文の1箇所か2箇所違うだけなのに、If節とElse節に全文コピペ
するアホがようけおるけど、ホンマ鬱陶しいから早死んで欲しいわ・・・)
0110101NGNG
>>109
まったくおっしゃるとおりでお恥ずかしい・・

' 見積ヘッダー部の追加登録(見積日がNullかどうかで処理を分ける。)
If Me.見積日 = "" Or IsNull(Me.見積日) Then
strSQL = "INSERT INTO T_見積 (見積番号,見積者"
strSQL = strSQL & " VALUES ('" & Me.見積番号 & "','" & Me.見積者 & "'"
Else
strSQL = "INSERT INTO T_見積 (見積番号,見積者,見積日"
strSQL = strSQL & " VALUES ('" & Me.見積番号 & "','" & Me.見積者 & "',CONVERT(datetime,'" & Me.見積日 & "')"
End If
cn.Execute strSQL, , adCmdText

' 見積ヘッダー部の更新登録(見積日がNullかどうかで処理を分ける。)
If Me.見積日 = "" Or IsNull(Me.見積日) Then
strSQL = "UPDATE T_見積"
strSQL = strSQL & " SET 見積者 = '" & Me.見積者 & "'
Else
strSQL = "UPDATE T_見積"
strSQL = strSQL & " SET 見積者 = '" & Me.見積者 & "',見積日 = '" & Me.見積日 & "',"
End if
strSQL = strSQL & " WHERE 見積番号 = '" & Me!見積番号 & "' ;"
cn.Execute strSQL, , adCmdText

すみません、全文コピペじゃなくて、適当にあったコードあわてて直してかいたもんで。
ちなみに、確かにDBはMSDEでミドルウェアはADO+OLEDBです。
条件分岐のことなんで、DB等の説明はあまり関係ないかと思いまして書きませんでした。
ただ、私の言いたかった事は理解していただいたけたみたいですね。
0111デフォルトの名無しさんNGNG

If Me.見積日.Value = "" Or IsNull(Me.見積日.Value) Then
  strSQL = "UPDATE T_見積"
  strSQL = strSQL & " SET 見積者 = '" & Me.見積者.Value & "',見積日 = Null,"
Else
  strSQL = "UPDATE T_見積"
  strSQL = strSQL & " SET 見積者 = '" & Me.見積者.Value & "',見積日 = '" & Me.見積日.Value & "',"
End if

strSQL = strSQL & " WHERE 見積番号 = '" & Me!見積番号 & "' ;"
cn.Execute strSQL, , adCmdText

Call MsgBox("厨房は逝ってよし!", vbAhoBakkari + vbDemmpa, "(-_-;")
0112デフォルトの名無しさんNGNG
Nzっつー便利な関数があるんだから使えばいいのに。
0113101NGNG
>>112
私に言ってるんですか?使ってますよ Nz(見積日,"Null")とかやって。
でも結局Null入れても1900/01/01が入るんでいまいちなぁ?と思ってたんですよ。
最終的にNzでやってんですけど、あなたはどうやって使ってるんですか?
0114デフォルトの名無しさんNGNG
>>112-113
日付の場合、ゼロは「特定の値」を意味するため、未入力の扱いとしては
不適切。
日付以外の場合なら問題ないとは思うが。
0115デフォルトの名無しさんNGNG
>>114
ネタですか?
Nz関数はゼロに変換するためだけにあると思ってる?
0116デフォルトの名無しさんNGNG
だめだ...
どうしても101がむかつく。なぜだろう。
0117101NGNG
>>116
うるせーばーか!
早く答え出せよ!
0118デフォルトの名無しさんNGNG
>101
仕様を見直せ!
0119101NGNG
>>117
誰ですか?わたしじゃないんですけど・・
0120デフォルトの名無しさんNGNG
>>119
ていうか、おまえ何やりたいの?
例でも言いからその判定文書けよ。
nullの意味分かってるの?
0121デフォルトの名無しさんNGNG
>>119
ていうか、例でもいいからその判定文書けよ。
何を判定したいのかわからん。nullの意味わかってるの?
0122デフォルトの名無しさんNGNG
>>119
問題、次の違いを簡潔に述べよ。
1.Null値 と Empty値
2. Nz(見積日, "Null") と Nz(見積日, Null)
3. "SET 見積日 = Null" と "SET 見積日 = 'Null'"
0123101NGNG
>>120,121
おまえにおまえと言われる筋合いはない。ハゲ。スレをよく見れ。
>>122
知らん。つーか、もう解決してるからいい。
0124デフォルトの名無しさんNGNG
 会社の方で仕事依頼がありましてちょっとお聞きしたいのですが、

 1レコードに100のフィールドがあり、それを10000レコード入力するとした場合、
入力ミスが発生しないようにするにはどのようにするのが効果的なのでしょうか?

 会社の方からは1つのフィールドに対して同じ内容のものを2回ずつ入力させる
ようにしたらどうかと言われているのですが、確かにこの方法ならミスは
ほとんどなくなりますが実質20000レコード入力している
ようなものなので非常に時間がもったいないと思うのです。
 しかもこれは入力者に多大なストレスになりますし……

 なにかいい方法はないでしょうか?
0125もまずにパピコNGNG
>>124
入力するのが何の規則性もない32ビットの数値データとかなら、2回ずつ入力してもらうしかないだろうな。
ちょっとでも規則性があるならその規則性を利用してミスを防ぎ入力を支援するのが普通君の仕事だ。
0126デフォルトの名無しさんNGNG
>>124
Access の問題ではない。
UIはどうあるべきか、フールプルーフな仕組みはどうあるべきか、という話題。
0127デフォルトの名無しさんNGNG
>>124
同じ内容を2回ずつ入力させるようにしたらと会社が言っているのならそうすれば?
但し、同じヤツに2回入力させたってダメだね。別の人間2人以上に入力させて
データをコンペアすべきだね。

でも、2回入力しようが10回入力しようが、ミスが起る可能性はゼロにはできない。
入力されたデータを正しく検証する方法をまず考えるべきだ。
データが正しく検証できるなら、1回で入力して、エラーを訂正してクリーンデータを
作ればそれですむ。逆にデータが検証できないなら、何回入力しようが、それは
「確立的にエラーが少ない筈」なデータというだけで、正しい事にはならない。

>1レコードに100のフィールドがあり、

この時点で仕様が間違っているニオイがぷんぷんだ(笑)


>なにかいい方法はないでしょうか?

入力作業を外注に出す。もちろんミスがあったら巨額損害賠償な契約書を作成。

0128デフォルトの名無しさんNGNG
ちょいと聞いてみたい事なんだが、Accessって他DBより劣ってる部分って何がある?

どこぞのエンジニアが「遅すぎる」「データ壊れやすい」とかのたまってたけど、
そんなに馬鹿DBなの?
0129デフォルトの名無しさんNGNG
>>128
今更こんなところで訊くまでもない、既知な問題。
無名ベンダのマイナな製品ならともかく、Googleででも調べれば、情報は
いくらでも転がっている。
0130128NGNG
ごめん。聞き方が全然だめだった。
「皆はそんなに馬鹿DBだと思ってる?」
の方を聞いてみたかったのだ。

>>129
すまん。
0131129NGNG
>>129
具体性に欠けるね。スマソ
翔泳社のWEBサイトにVBマガジン(現・.NETマガジン)のバックナンバー
記事の一部が公開されており、その中に、秋月巌氏の連載記事もある
はず。
それを読めば、参考になるのでは?
0132デフォルトの名無しさんNGNG
>128
今となってはJetは有能なDBであるとは思わない。
が、救いようの無いものであればこんなに普及せんよ。
速度に関しては、ローカルで使う限りは早い。あたりまえだが。
データ破損もシングルユーザならそうそう発生しない。
スタンドアロン・シングルユーザでマターリ使うならお気軽でいいと思うけど。
0133デフォルトの名無しさんNGNG
Jetってなんですか?
初心者的質問ですみません
0134デフォルトの名無しさんNGNG
>>133
検索エンジンってなんですか?
初心者いじめ的嫌がらせですみません
0135もまずにパピコNGNG
>>133
アクセス形式のDBのなまえー、「mdb形式」とか言った方が通りがよさそうなのにMSはなぜかそう呼んでる・・・
0136デフォルトの名無しさんNGNG
JETでMDBに接続する
0137デフォルトの名無しさんNGNG
>>135
おまえ馬鹿か?
ACCESSはDBMSか?
アクセス形式?なんだそれ。
初心者以下だな。
マ板でこんな書き込みを見るとは。
ネタな事を祈るよ。
0138ここはム板だがNGNG
>>133
jet mdb でググったら一番上
ttp://www.ruriplus.com/msaccess/Exp/exp0160.htm
0139133NGNG
>>138
はあ、勉強になりました

要は DAO は Jet を利用して DB にアクセスする為の機能を提供するものだと、
そういうことになるんですかね

だとしたら ADO は
Jet 等を使わずに直に DB にアクセスするから高速だということか
0140デフォルトの名無しさんNGNG
ブッブー
0141デフォルトの名無しさんNGNG
>139
DBエンジンとユーザアプリケーションの間にいるのがDAOやADOだ。
ってかMDB扱うのであればDAOの方が早いんじゃなかったっけ?
0142デフォルトの名無しさんNGNG
>>141
ソダネ

DAOは早いけどACCESS依存
ADOは遅い(といってもDAOより少し?)けど、汎用性があり、いろんなDBにつなぎやすい

と認識してます。
違ったらスマソ。

俺はADOが便利なので、もっぱらそれをつかっちゃってますが。
0143デフォルトの名無しさんNGNG
>>142
DAOはレガシーだが、ユーザ人口が多過ぎて、MSの立場としては捨てるに捨てられない(泣)心境。
0144デフォルトの名無しさんNGNG
DataBaseEngine という表記とは裏腹にその実態はDLL。
ま、ISAM Library の類かな?(とか言うと石を投げられそうだが)
0145デフォルトの名無しさんNGNG
>>143
売り物として開発するのに、DAOが適切な選択肢かどうかはさておき、操作性が高く、コーディングも
直感的にわかりやすく記述が容易なので、プログラミング入門者の教育には最適。
0146デフォルトの名無しさんNGNG
なんだ、みんなDAOマンセーじゃんw
0147デフォルトの名無しさんNGNG
>146
つか、ネットの事例もDAOが多いし。
0148デフォルトの名無しさんNGNG
SQLを実行する手続きを簡略化するため(?)DAOと比べADOのメソッドは
若干その数が減っている

DAOで実現できた処理がADOでは不可能になっちゃったなんてケースに
遭遇したことってある? ・・・と、さりげなく誘導尋問してみる
0149デフォルトの名無しさんNGNG
まぁ、2000からはADOが標準になってるらしいけど・・・・
参考書なんかみてもADOから解説してるものが多いよね。
0150デフォルトの名無しさんNGNG
>>148
初期のADO(2.1頃)って、Recordset.GetRowsメソッド(Variant型の配列を返す)がなかったのでは?
今は実装されてるけど。
0151デフォルトの名無しさんNGNG
>>148
定義関係だなあ、ADOXつかえばいいんだろうけど
MDBならDAO使うし、他のRDBMSならSQL投げるし
0152デフォルトの名無しさんNGNG
今までMDBでPrtDevModeを使ってレポートの設定をしていたんですが、
MDEでもSetPrinter()APIで、用紙サイズの変更、用紙の向き等を変更できますか?
0153デフォルトの名無しさんNGNG
PrtDevModeを設定出来なくなるので無理
Access2002ならPrinterオブジェクトで変更可
つーか環境書け
0154デフォルトの名無しさんNGNG
>>153
プ
0155デフォルトの名無しさんNGNG
レコードごとに画像やHTMLを保存したいのですが、
どうすればいいのでしょうか?
とりあえず思いついたのがmdbの横にディレクトリを作って
そこへ保存。
ハイパーリンク型フィールドへ
画像やHTMLのindexへの相対パスを入れる。
という方法なのですが、
相対パスの文字列を入れても
実際ジャンプする時には
先頭に自動的に「http://」を入れられてしまい、上手く飛べません。
絶対パスを使いたくない理由は他の環境などへ持っていった時に
飛べなくなるからです。
いい方法あれば教えてもらえませんか?
アクセス2000です。
0156デフォルトの名無しさんNGNG
ハイパーリンク型である必要がどこにある?
0157155NGNG
>156
ハイパーリンク型にすると
自動でリンクを貼ってくれると思ったからです。
テキスト型でも構いませんが、見る時
即座に画像などを表示するのが難しいのでは?と思ったからです。
ハイパーリンク型にこだわる必要はないです。
いい案あればください。
0158デフォルトの名無しさんNGNG
>157
どう動くのか予想がつきにくいハイパーリンク型に比べ、必要に応じてアプリを
Shellしてやればいいだけなのだから、String型でパス文字列を持っておくほうが制御が楽でわ?
0159デフォルトの名無しさんNGNG
わからないので教えてください。
下のように業者番号ごとに累計して画面に表示しようと思うのですが
業者のレコードに関係なくすべての業者の累計になってしまいます。
業者ごとに累計させたいのですが、どうしたらいいでしょうか?

レコード1

1 株式会社 壱

 日付     数量    単価   合計
2002/11/05    4     500   2000
2002/11/06    2     500   3000
2002/11/07    5     500   5500

レコード2

1 株式会社 弐

 日付     数量    単価   合計
2002/11/11    4     500   7500
2002/11/16    6     500   10500
2002/11/17    5     500   13000
0160デフォルトの名無しさんNGNG
>>159
どういう作りになってるのかわからないのでコメントのしようがない。
ただもしその「レコード」がテーブル構造そのままだとしたら
正規化から始めんとだめでしょう。
0161デフォルトの名無しさんNGNG
>159
まずは自分なりに考えてみれ。
なんでもかんでもSQL一発でやろうとするな。

0162デフォルトの名無しさんNGNG
あげ

>>93=>>159?
0163155NGNG
>158
何型でもかまいません。
テキスト型でもいいです。
一番聞きたいのは
レコード単位で画像やHTMLファイルなどの
ファイルを管理する必要がある時、
最適を思われる方法を知りたいのです。
アドバイスいただけませんか?
みなさんだったらどうしますか?
0164デフォルトの名無しさんNGNG
>>163
先日、ビジネスソフト板で同じようなことを聞いたら>>158の方法でいいといわれましたよ
systemテーブルのような物をつくってそこにデータディレクトリへの絶対パスを、
各レコードにそこからのパスを持たせてviewerへsendmessageさせてます。データはjpegイメージです
同じようにShellExcuteさせればいいのでは?
0165164NGNG
で自分の質問ですが、
非連結の帳票ビューを使って、VBAでRecordSet、ControlSourceを動的に生成(WHERE区の置き換え)させているのですが、
フォームオープン時に一項目だけ空の帳票項目が表示されてしまいます。

そこで、OpenイベントハンドラでRecordSetに
SELECT 〜 WHERE autoNumID = 0
として空のレコードセットを指定して上手く動いている様ですが、もう少しスマートな方法はないのでしょうか?
それと勝手に前提としてますが、オートナンバーって絶対に非ゼロなのでしょうか?
よろしくpねがいします。
0166デフォルトの名無しさんNGNG
↑×RecordSet
 ○RecordSource
0167デフォルトの名無しさんNGNG
オートナンバーフィールドの値は、"テーブルにレコードが追加される時点で
自動的に固有の数値が格納される"仕様。
書き込まれる値 = 連続値、乱数、レプリケーションIDのいずれか。
オートナンバーフィールドの初期値に"初期値<0"が設定できれば
0スタートが可能だわな。
オートナンバーのデータ型がunsignedだったら無理だけど。
オートナンバーフィールドを"-1"でリセットできるか確認してみれば
答えは自ずと導きだされるんじゃねえの?
0168デフォルトの名無しさんNGNG

プログラム内で、現在連結フォーム上に表示されているレコードが何件目なのか取得するには、
なんて関数(メソッド?)を使えばいいでしょうか?

連結フォーム上では下に表示されている数です
5/10 みたいな感じで <10件あるうちの5件目

よろしくお願いします。
0169デフォルトの名無しさんNGNG
>>168
バージョンを明記していないんで Access2002 を前提にして書くけど
"カレント"をキーワードにヘルプを引くと"CurrentRecordプロパティ"
なるものが見つかるけどね。
0170sakuraNGNG
教えてください

2000を使っています。
半角全角混合のtxtファイルのインポート(リンク)をしたいのですが、
全角文字のトコロで参ってます。
”あ”や”A”は2バイトで認識してくれるのに
”☆”や”×”などは1バイトで認識しちゃいます。
で、以降の項目で桁ずれが起きてしまいます。

何とか上手い方法はありませんか?
おねがいします。

おわり。
0171デフォルトの名無しさんNGNG
>>170
まあバイト数調べてるとこのソースでも出せや。
0172デフォルトの名無しさんNGNG
>167
うーん。とりあえず自分が管理するので非ゼロでいきます。
デフォルトでなにかSELECTする(例えば今日の日付とか)仕組みのほうがいいかもしれませんね。
ありがとう。
0173デフォルトの名無しさんNGNG
>>172
オートナンバーの初期値は'1'からだね。(テーブル生成時/テーブル最適化による初期化時)
ただし、SQL(Insert文)でオートナンバーフィールドに値'0'を追加できるので、"絶対に
0である"保証はない。ま、意図的に混入させない限り、オートナンバーフィールドに値'0'を
持つレコードが存在することはないと考えていいと思うですよ。
0174デフォルトの名無しさんNGNG
>>170
?LenB(StrConv("☆×", vbFromUnicode))
0175155NGNG
>164
アドバイスありがとうございます。
参考になりました。
そのように実装したいと思います。
感謝してます。
0176アクセス太郎NGNG
WEB上のgif画像を 8002なら http〜を自動で追加して
http://chart.yahoo.co.jp/c/3m/8/8002.t.gifの画像をフィールドに
表示させるとかできるのでしょうか?

2段階の質問になりますが よろしくお願いします





0177困っている学生NGNG
以下のようなソフトウェアとアドバイスを探しています。
<1つ目>
あらかじめ作成されたテーブルに、データ(レコード)を次々と入力・編集(作成)するWebブラウザ上で動作するソフトウェアです。
出来れば、レコードの一覧表も表示されて、その中から選択して編集するという形式のほうが好ましいです。
開発ソフトウェアにVC++を採用して、DAOを用いて、一つずつ作成・編集するソフトウェアは自力で作成しました。
しかしながら、それをブラウザ上で起動させるように改良させるということが出来ません。
ActiveXを利用しようとしたのですが、それだとCDaoRecordViewクラスが使用できないため困っています。
(ActiveXを利用するとViewクラスをCOleControlクラスとリンクできないため困っています)
何か良いアドバイスをください。


<2つ目>
.mdbファイルを自動で、レコードを一覧表で表示する.htmファイルに変換するソフトウェア。
ユーザは対象となる.mdbファイルのパスを指定するだけで、.htmファイルに変換するソフトウェアはないでしょうか。

アドバイスの程、よろしくお願いします。
0178デフォルトの名無しさんNGNG
>177
Access2000と仮定して・・・

1)「データアクセスページ」でヘルプを検索
2)「エクスポート」でヘルプを検索

あとAccessのバージョン書けや。
0179デフォルトの名無しさんNGNG
>>177
設計段階での情報収集と知識獲得って大事です。

1>ADOとDAOについて調べるとよい。
2>当てにはできんが、AC2KからDAPなるものも加わった。

ところで、なにゆえHTMLで表示せにゃならんのか。
そーゆー大きなところを悩み苦しむときにスキルはアップする。
0180デフォルトの名無しさんNGNG
全然お助け方向の回答じゃない。
まず、
とりあえず、DAOでアクセスできて、
クライアントアプリはできてるんだろ?
もし、今まで作成したアプリ(のコード)を
活かしたいのなら、今までのコードを
変更して、VCでcgiを作りなさい。
データを表示、編集できるように標準出力に
html形式で出力すればOK。
更新もhtmlのフォームからpostし、それを
環境変数から編集データを持ってこればいい。
まぁ、その辺もぐぐればざくざくでてくる。

WEBでACCESSのDBアプリをつくるなら
IIS+ASPで作るのが一番簡単。
多分、今から(0から)作り始めても、
同じくらいの工数でできると思う。
下手したらこっちの方がはやい。
0181困っている学生NGNG
みなさん、レスありがとうございます。
>ところで、なにゆえHTMLで表示せにゃならんのか。
先生がそう望むからです(悲笑)
使用しているAccessのバージョンは、Access2000です。
言い忘れてごめんなさい。
僕は皆さんが挙げられたキーワード、IIS,ASP,cgiについて調べてみます。
光が見えてきて、少しホッとしています。
178〜180さん、どうもありがとう。

そしてこれからも、
引き続き何かアドバイスお願いします。
0182デフォルトの名無しさんNGNG
このようなクラスをVBで定義
public withevents txtHoge as TextBox
private sub txtHoge_KeyPress...

txtHogeにAccessのテキストボックスを入れて、
VBのクラスでテキストボックスのイベントを取得したいのですが
できないのでしょうか。
0183デフォルトの名無しさんNGNG
参照設定にAccessApplicationとかを追加しないと型が合わないんじゃない
0184デフォルトの名無しさんNGNG
あげ
0185デフォルトの名無しさんNGNG
廃れてるな。
0186デフォルトの名無しさんNGNG
VB6のGrid系コントロール使っても大丈夫?
0187デフォルトの名無しさんNGNG
階層フレキシブルは充分いけたぞ Ac97から
0188デフォルトの名無しさんNGNG
だいじょぶです
0189デフォルトの名無しさんNGNG
すみません。教えて下さい。
ACCESS2000のVBAで、
?"1"="1"
が
True
になってしまいます。同様に英字・カタカナも同一視されるんですが、
なにかいい方法ありませんか?
0190デフォルトの名無しさんNGNG
ACCESS+SQLServerでマスタメンテナンス画面においてトランザクション処理をしようと思っているのですが、

今考えている手法として、

1.メンテ画面を開くと同時に、サーバ上のデータをローカルにあるワークテーブルにコピー
2.ワークテーブルをメンテナンス
3.ワークテーブルをマスタに反映

という手法を取ろうとおもっています。

ですが、参考書をみたら、
BeginTransやCommitTransを使って行うとあります。
内容を良く見たら,データのコピーをローカルにコピーするか、内部変数上にもってくるかの違いだけらしいのですが・・・
もしくは、上記のワークテーブルを使う手法で、3番のマスタに反映時にこのBeginTrans等をつかってトランザクション処理を
するとよいのでしょうか?

見当違いの質問かもしれませんが、詳しい方、よろしくお願いします。
0191デフォルトの名無しさんNGNG
>>189
VBAだけなら、モジュール宣言部の
Option Compare Database を外せばいい。

または文字列比較にStrCompを使うようにする。
0192デフォルトの名無しさんNGNG
>>190
AccessのバージョンとSQLServerへの接続手段を書いた方がいいかもね。
0193189NGNG
191さん、どうもありがとうございました。
モジュールの先頭にそんなヒントが隠されていたとは...(恥)
0194190NGNG
>>192
ああ、すみません、そうでしたね。

OSはWin2k
Accessは2000です
SQLServerへはADOをつかって接続しています

PROVIDER=SQLOLEDB.1;
PASSWORD=user1;
PERSIST SECURITY INFO=TRUE;
USER ID=user1;
INITIAL CATALOG=xxdatabase;
DATA SOURCE=SQLSvr;

こんな文字列を渡して接続しています。

よろしくお願いします。
0195デフォルトの名無しさんNGNG
>>190
途中でコケて困るのは3番だけかな。
ってことで、トランザクション処理が必要なのは3番!!!どーん!
0196デフォルトの名無しさんNGNG
>>190
・シングルユーザ環境なんで同時更新は有り得ない、かつ、SQLServerへの
 書き込み結果が正しく反映されることを期待する
・新規データのバッチ登録
 空のワークテーブルを用意 -> 新規データの追加 -> SQLServerに一括で追加
以上の様な目的なら、その考え方でかまわないんじゃないでしょうか

マルチユーザ環境、かつ、同時更新が起こりうるような場合は
 1.トランザクション開始の宣言
 2.データの読み込み
 3.データ変更作業
 4.データの書き込み
 5.コミットorロールバックでトランザクションの終了
みたいに処理を封じ込めるってのがセオリーじゃないかなぁ・・・?
0197190NGNG
>>195-196
回答有難うございます。
一つ忘れていました。
ワークテーブルには、追加、更新、削除の三つのフラグがあり、
クライアント側でそれぞれの処理を行うと各フラグたたちます。
3番の反映時には、各フラグが立っているレコードのみを抽出し、それぞれの処理を行う方式です。
ちなみに、同一レコードの同時更新はありえません。

これも踏まえてアドバイスなぞありましたら、お願いします。
0198190NGNG
今いろいろ書籍とかネットを調べていたんですが・・・

ローカルテーブルを使ってデータを更新する方法とBeginTransを使う方法って、
物理テーブルを使うか、サーバ内のメモリ領域を使うか、って違いだけなのかな・・・・?

間違ってます?
0199デフォルトの名無しさんNGNG
>198
あのさ、まずBeginTransやCommitTransが何なのかって所からしっかりヘルプ読んだほうがいいよ。
チャラチャラしたHowTo本じゃなくて、しっかりとしたデータベースの基礎が書かれてるヤツな。
そうすればそんな発想は出てこないはず。

で、>196が指摘してるようにシングルユーザなのかマルチユーザなのか、
マルチユーザなら同時更新は起こりうるのか、って所をはっきりさせてくれ。
0200190NGNG
>>199
マルチユーザーで、
同一レコードに対しての同時更新は起りえません。同一テーブルならもちろん起りますが

とりあえずデータベースの専門書調べてみます。あとヘルプも。





4年前にORACLEでやったんですけどね・・・すっかり忘れてしまった・・(涙)
その時にはBeginTransやCommitTransを使ったんですけど。
しばらく現役はなれていたんでもう・・・・
0201初歩的な質問で申し訳ないですNGNG
ACCESS以外でやってきた時は上手く言っていた事が
ACCESSだと何故だか上手く行かなくて困っています。
ORDER BY 句で下記の様にソートしたいのですが
1
2
A
A
a
a
何故だか下記のようにソートされてしまいます。
1
2
A
a
A
a
Option Compareとかでバイナリ指定しても駄目だし
StrCompとかだとソートしたいだけなのに、抽出を行う事になってしまうし…
0202デフォルトの名無しさんNGNG
http://www.asahi-net.or.jp/~ez3k-msym/comp/acccoll.htm
0203201NGNG
>>202
早速有難うございます。実は…
そのURLは、私もGoogleで見つけていましたが、採用しませんでした。
何故なら6000行程を処理するのですが、ソートすべき列がcharの12桁あり
少々遅くなり過ぎるので、なるべく簡潔なロジックにしたかったものですから…
…う〜ん、やはりソレしか方法は無いのでしょうか
他の方法を御存知の方いらっしゃいましたら、御教示頂ければ幸いです。
0204デフォルトの名無しさんNGNG
>>203
16進ASCIIコードの文字列にする関数を作ればいいじゃん。
その程度のデータ量なら一瞬で終わるぞ。
0205201NGNG
>>204
有難うございます。
やはりSQLメインでは出来ませんか…
とりあえず関数作って処理時間を計測してみます。
0206201NGNG
わ、凄い。1万件で3秒でした。(CPU=P�W1.6GHz)
有難うございました。
0207デフォルトの名無しさんNGNG
>>206
詳細希望します。
0208デフォルトの名無しさんNGNG
ウケル
0209デフォルトの名無しさんNGNG
Accessの非連結フォームでADOとフォームのコントロール
関連付けるためのクラス作ったんですが、
似たようなの作った人いませんか?
0210204NGNG
>>206
それはちょっと遅すぎる気もするね。
俺がローカルなmdbで試してみた限りでは
Celeron533MHzでも 5000件*15文字程度で約1秒だった。
0211デフォルトの名無しさんNGNG
Adpを使用してSQLServerとやりとりしているのですがSQL文中でIifなどの関数が使えず困っています。
SQLServer側でユーザ定義関数を作ろうかと思ったのですがさっぱりです
何かいい方法はないでしょうか?
0212デフォルトの名無しさんNGNG
Access97を使ってバーコード128を印刷したいんですが、
バーコードの下の数字は消したいんです。
プロパティあれこれいじってるんですが、どなたか方法知ってたら
教えてください。
0213デフォルトの名無しさんNGNG
>211
case when
0214名無しさん(新規)NGNG
たまに必要に迫られてVBAをいじってるだけの素人です。
HTMLのページをACCESS(2002)で読み込みたいんですが、
やり方は
http://www.microsoft.com/japan/enable/training/kblight/T005/0/12.htm
に書かれてるのでわかったんですが、
どうやってもこの通りにならないんです。
症状としては
http://www.akj.co.jp/aug/qa/ans0001-0050/1153.html
(これは別人の報告です)
・・・に書かれてるのとほぼ同じ症状でどうやってもエラーが出てしまう
んですね。
どなたかわかりませんか?
ちなみにサーバー上のファイルではなく、パソコンの中のファイルの
読み込みには成功しました。
どうかお願いします。
0215デフォルトの名無しさんNGNG
HTMLページをACCESSで読み込む必要性がわからん。
0216デフォルトの名無しさんNGNG
>>215
必要性とか別にいいじゃん。何で技術を聞いているのに
そういう能書きたれるのかな。
お前もpins'sの知ったか厨房か?
>>214
Accessのその機能はSMBで認識できるファイル
簡単にいうとc:\***とか\\マシン名\で開く
ことができるhtmlファイルのみ。
だからPCの中のファイルは成功する。
説明のページのIE画像もマイコンピュータの
絵がついているだろ。あれはローカルファイルの証拠。

ファイルにアクセスするプロトコルが違うわけよ。
逆のexportも同じ。
0217デフォルトの名無しさんNGNG
ACCESSのVBAからEXCELを起動し、そこにデータを貼り付けるという方法で、
既存のEXCELファイルをOpenする方法はヘルプにもあり分かったのですが、
新規でEXCELを起動する方法がわかりません。
どのような記述をすればいいですか?


HELPの探し方が悪いのかな・・?


ちなみに
Dim objxl As New Excel.Application
というのを変数で作っています。

0218デフォルトの名無しさんNGNG
>>217
起動するだけならShellでいいのでは?
0219デフォルトの名無しさんNGNG
>>217
dim wb as excel.workbook
set wb = objxl.workbooks.add
0220デフォルトの名無しさんNGNG
しろうとは1-2-3でも使ってなさいってこった(w
0221デフォルトの名無しさんNGNG
サーキットの狼
0222217NGNG
>>219
起動できましたー
有難うございました!
0223214NGNG
216さん、レスありがとうございます。
う〜ん、一応ftpサーバーにはアクセスできて、サーバーの中の
フォルダとかは覗けるんですけどね。
http://www.akj.co.jp/aug/qa/ans0001-0050/1153.html
の報告のように・・・。
つまり、Accessからftpサーバーにログインできているにも
かかわらずインポートができないんです。
インポートも出来ないのにログインだけ出来るというのは
腑に落ちません。それではログインする意味がないですから。
ヘルプをどう読んでも出来るようにしか思えないし。
もし、興味がおありでしたら実験して見て下さい。(皆さんも)
ヘルプのキーワードから"html"と打つとログインの方法とか詳しく
出てきます。
0224214NGNG
>>215
HTMLページをACCESSで読み込む必要性ですか?
私の場合は、あるサイトの情報をVBAで自動的に読み込んでテーブルに
蓄積したりその情報を元に処理をしたいからですね。ビジネス用途です。
そのためにもまずは手動でも何でもインポートに成功する必要がある
んですが、それが出来ず困っています。
ちなみにエクセルでは簡単にインポート出来ました。
0225デフォルトの名無しさんNGNG
>>223
ごめん、漏れの認識不足ダターヨ。
あやまるよ。
あとは、ftpのログインユーザで
インポート対象のhtmlファイルの
読み込み権限はあるのか調べて見れ。
0226214NGNG
>>225
読み込み権限は確認しましたがやはり問題ありません。
普通にブラウザでも表示されてますし。
http://www.akj.co.jp/aug/qa/ans0001-0050/1211.html
その後、こちらでも同様な問題が報告されてました。こっちは
htmlではcsvファイルの読み込みですけどね。
で、こちらは回答付で、回答の中に対処法とソースのリンクが書かれて
ました。
こちらの方がやや敷居が高そうですが、汎用性がありそうですね。
(htmlが読み込めるのかどうかは不明ですが)
WinInet.dllの機能を使うとのことですが、何でしょうWinInet.dllとは?
いずれにしても、これを使いこなせば、色々とおもしろいことが出来
そうです。
0227214NGNG
訂正
>htmlではcsvファイルの読み込みですけどね。

htmlではなくcsvファイルの読み込みですけどね。
0228214NGNG
もっと効率的かつかつ画期的なシステムを思いついたので
ちょっとも釣ります。
0229214NGNG
>>228
この214さんは偽者です。
何故私なんかの偽者に???
0230デフォルトの名無しさんNGNG
冬休みだし3連休だし…
0231名無しさんNGNG
>>228
釣られてるプ
0232214NGNG
さっき、川原でやった六尺兄貴凄かったです!ガチムチの色黒兄貴がオッス連呼で
張型ケツにぶちこまれ腰振ってました。俺もくわえさせられて浣腸食らい無様に
排便さらしました。バリカン出されたときは一瞬引いたけど、兄貴の「いやなら
止めていいんだぜ!」の一言で覚悟決め、生まれて初めて丸刈りになりました。そ
の後、脇・チンゲも刈られてビンビンのマラ、思いっきりしごかれ派手にガチムチ
兄貴の顔に飛ばしました。スッゲー男らしく気持ちよかったです。また行くとき
カキコして下さい!帰ってから丸刈りの頭見て、また感じまくってます!
0233デフォルトの名無しさんNGNG
       _/ ̄ ̄ ̄`v―--、
      /       ヾ   \
     /  /       ヾ    \
    /           |ヽ    ヽ
    |           / | \  |
   /    // / ///丿 | | | |ヾ\|
   |  |  /_/_/_/_// __|_|_.|_|_|\ |
   |   | | ヽ-=・=| ヽ-=・=- | ||||
   |   | |     |  |     | |||     / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
   |   |   ̄ ̄ ̄/   ̄ ̄ ̄  |||   < 無職童貞35歳守本浩司です。よろしく
   | |  |     ( _⌒_ )    | ||     \______________
   .|    |     _,..、_    /  |
   .|  ヾ |\   `ー〜'    /| | .| http://psycho_boge.tripod.com/index.htm
   |     ゝ\        /| | | |
  |   | ゝ   ~`ー、___/ | |  ||
  ////.∧|         /  | |  | | |
0234デフォルトの名無しさんNGNG
つづく
0235デフォルトの名無しさんNGNG
スレタイだけ見ると、Access2.0スレなのかと思ってしまった。
0236546NGNG
わたし独学でVBAちょこっとやってるのですが、教えてください。
accessのVBAから、同じフォルダ内にあるエクセルをGetObjectなどで
呼び出そうと思うのですが、そのフォルダがサーバ上にある場合、
\\から場所を指定しないといけないですか?
0237デフォルトの名無しさんNGNG
>>236
問:
「同じフォルダ内にあるエクセル」とは、"*.xls"ファイルの事か。
「そのフォルダがサーバ上にある場合」とは、ネットワークドライブ経由でなのか、
あるいはWeb経由なのか。

注意:
"546"←こういうハンドルは紛らわしいのでわめてくれ。
0238236NGNG
546は、うっかり間違えました。すいません。
*.xlsのことです。それで、ネットワークドライブ経由です。
サーバのフォルダ内に、
*.mdbと、"a"というフォルダがあります。
"a"の中に.xlsファイルがいくつかあり、その中の特定のファイルを
*.mdbのVBAから指定したいのです。    
0239デフォルトの名無しさんNGNG
>>238
\\必要。
Mid(CurrentDb.Name, 1, Len(CurrentDb.Name) - Len(Dir(CurrentDb.Name))) & "a\" & "hoge.xls"
でOK。
0240236NGNG
>>239さん
ありがとうございます。これでいちど作成してみます。
0241236NGNG
Access2000のGetObjectで開いたエクセルのファイルの、シートを指定したいのですが、
シート名が日本語の場合、エラーが出てしまいます。
というふうにしています。シート名をアルファベットに変えるとうまく開きます。
xls.Application.activeworkbook.sheets _
("シート名").select
日本語のシートは指定できないのでしょうか。

過去ログを見ると、初歩的な質問をしている人は「死ね」とか
暴言を吐かれていますが、ここは初心者は来たらいけないスレですか?
それとも暴言を吐いた人が田舎者なのですか?
0242236(ログ修正)NGNG
表記が変だったので修正しました。

Access2000のGetObjectで開いたエクセルのファイルの、シートを指定したいのですが、
シート名が日本語の場合、エラーが出てしまいます。
xls.Application.activeworkbook.sheets _
("シート名").select
というふうにしています。
シート名をアルファベットに変えるとうまく開きます。
日本語のシートは指定できないのでしょうか。
0243デフォルトの名無しさんNGNG
>>242
オブジェクトを得たら
Set tempobj = MyXL.Application.sheets.Item("ダミーデータ").cells(10, 1)
こんなふうにデータを取れる。

>暴言を吐かれていますが、ここは初心者は来たらいけないスレですか?
変に煽るな。質問者が荒らしを招いてどうする?
0244236NGNG
>>243
ありがとうございます。
頭は働くのですが、目が疲れてズキズキするので
休憩してから数時間後にトライしてみます。

煽ったつもりは無かったんですが・・。素朴な疑問です。
他のスレ行くと、もっと酷い暴言が飛び交ってますね。(美容の巨スレなど)
顔を出さずに済むならここまで言えるんか。と呆れます。世も末ですね。
0245デフォルトの名無しさんNGNG
>>244
あなたも街中で「ここは暴言を吐く人達の集まりか? 世も末だな」なんて
大声で言わないでしょ。
顔を出さず言いたいこといってるのはあなたも彼らと同じわけです。
0246デフォルトの名無しさんNGNG
私は言いますけどね・・・
街中でいえないことはここでも言わない。
こういう人間だっているんです。
どっちがまともかはわかりませんけれど。
スレ違いですみません。
0247デフォルトの名無しさんNGNG
>>246
街中には暴言を吐く人はいないでしょう。
暴言を吐く人たちのあつまる場所とはスラムのように荒れすさんだ場所です。
ここは2ちゃんねるです。
2ちゃんねるとはインターネットの中のスラムのようなものです。
ルールなんてものはありません。世も末なのも当然です。
0248デフォルトの名無しさんNGNG
学校のように秩序があり、誰も暴言を吐かず、高級住宅街のように
きれいなスレばかりの2chなんて何の魅力もないと思う。
0249IP記録実験NGNG
IP記録実験
http://qb.2ch.net/test/read.cgi/accuse/1042013605/

1 名前:ひろゆき ◆3SHRUNYAXA @どうやら管理人 ★ 投稿日:03/01/08 17:13 ID:???
そんなわけで、qbサーバでIPの記録実験をはじめましたー。

27 名前:心得をよく読みましょう 投稿日:03/01/08 17:20 ID:yL/kYdMc
SETTING.TXT管轄でないということは全鯖導入を視野に、か?

38 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:22 ID:rLfxQ17l
>>27
鋭いです。

73 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/08 17:27 ID:rLfxQ17l
>ところで、IPが抜かれて何か今までと変わることってあるのでしょうか?
・今までより、サーバが重くなる。
・裁判所や警察からの照会があった場合にはIPを提出することがある。
0250デフォルトの名無しさんNGNG
なんでも俺を実験に使うそうで
0251デフォルトの名無しさんNGNG
2ちゃんねる が衰退していく

あるネット関連会社の社長は、
「いずれにしても2ちゃんねるは資金が底をつけば終わり。
あまり知られていないことだが、2ちゃんねる内部関係者によると今、
大手通信会社系が調査費名目で資金提供している。
だが、それが止まれば続けてはいけないだろう」
と証言する。
2ちゃんねるが判決によって力を失った場合、
資金提供の打ち切りも予想される。

http://ascii24.com/news/reading/causebooks/2002/07/01/636911-000.html
0252デフォルトの名無しさんNGNG
最高裁への上告は認められなくなったから、これで事実上判決確定だよ。
逆転も何もないって。          
勢いで上告なんかしても一発で上告却下(門前払い)だよ。
   
二審も一審を支持。これに対して上告しようにも、
刑事訴訟と同様、自由に上告できるってもんでもないのです。
民事訴訟法312条 (上告の理由) 1項
「上告は、判決に憲法の解釈の誤りがあること
その他憲法の違反があることを理由とするときに、することができる。」
http://www.m-net.ne.jp/~doba/goto/hon.htm
  
ようするに上告しても今の制度では100%無駄。 これで完全終了ってことか。
0253デフォルトの名無しさんNGNG
ここがダメになれば次の遊び場を見つけるだけの話さ。
ナプとか見てればわかるだろ?
0254デフォルトの名無しさんNGNG
開発を進めていたら、いきなり以下のエラーがでて強制終了してしまいました。
それからというもの一定の画面でこの処理が多発します。
仕事になりません、どなたか理由わかりますか?

<エラーメッセージ>
アプリケーション ポップアップ:
MSACCESS.EXE - アプリケーション エラー : "0x77fcd510" の命令が "0xfffffff8" のメモリを参照しました。
メモリが "read" になることはできませんでした。

プログラムを終了するには [OK] をクリックしてください


分かる方、助けてください(T-T)
0255デフォルトの名無しさんNGNG
======2==C==H======================================================

         2ちゃんねるのお勧めな話題と
     ネットでの面白い出来事を配送したいと思ってます。。。

===============================読者数: 138720人 発行日:2003/1/9

年末年始ボケがそろそろ収まり始めた今日このごろのひろゆきです。

そんなわけで、年末に予告したIP記録ですが実験を開始しています。

「2ちゃんねる20030107」
こんな感じで各掲示板の最下部に日付が入ってるんですが、
20030107以降になってるところはログ記録実験中ですー。

んじゃ!

────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50
────────────────────────────
0256困ったくんNGNG
Accessのパスワード解除の方法をご存知の方おられますか?
pocosoftさんが作られているようですが、応答がありません。
よろしくお願いします。
0257デフォルトの名無しさんNGNG
俺も知りたい。
Winnyで手に入れた重要機密が書かれたmdbの内容を公開したいんだ。
0258困ったくんNGNG
書き忘れましたが、Accessのバージョンは97です。
0259デフォルトの名無しさんNGNG
>>266
告発するような奴は2ちゃんねるなんか見ないと思われ。
0260254NGNG
書き忘れ
Windows2000で、ACCESS2000です。
0261デフォルトの名無しさんNGNG
>>259
氏ねよ。クズが。
0262デフォルトの名無しさんNGNG
>256
それってAccessのみで動いてるorVB等から使われてる、どっち?
0263デフォルトの名無しさんNGNG
どうもです。
0264236NGNG
Accessから既存のエクセルシート(日本語名)が指定できなかった件ですが、
参照設定をしていなかったことが原因でした。
教えてくださった方、ありがとうございました。
0265デフォルトの名無しさんNGNG
111 名前:ひろゆき ◆3SHRUNYAXA [] 投稿日:03/01/08 17:33 ID:rLfxQ17l
   >datの書いた内容とIPが対になってることを証明すんのもめんどくさいもんな。
   そゆことです。

114 名前:心得をよく読みましょう[] 投稿日:03/01/08 17:34 ID:ZxrhkN5z
   幼女をレイプします

119 名前:ひろゆき ◆3SHRUNYAXA [] 投稿日:03/01/08 17:35 ID:rLfxQ17l
   >>114
   携帯電話からご苦労様です。

139 名前: ◆FruitsMIpE [sage] 投稿日:03/01/08 17:38 ID:s/ESWpsO
   「携帯から」とか公開しないでほすぃ。。

150 名前:ひろゆき ◆3SHRUNYAXA [] 投稿日:03/01/08 17:40 ID:rLfxQ17l
   >>114みたいなことを書いたらそうなりますです。>139さん

170 名前:ひろゆき ◆3SHRUNYAXA [] 投稿日:03/01/08 17:42 ID:rLfxQ17l
   負荷が高そうなサーバにも入れて見ます。

217 名前:ひろゆき ◆3SHRUNYAXA [] 投稿日:03/01/08 17:49 ID:rLfxQ17l
   一定期間でログは消しますです。
0266デフォルトの名無しさんNGNG
249 名前:ひろゆき ◆3SHRUNYAXA [] 投稿日:03/01/08 17:52 ID:rLfxQ17l
   >荒らしとか犯罪のためなの?
   そす。

246 名前:心得をよく読みましょう[] 投稿日:03/01/08 17:52 ID:BH998yxV
   >ひろゆき
   俺のお気に入りのスレとか荒されてるんだがそういうのにも有効?

257 名前:ひろゆき ◆3SHRUNYAXA [] 投稿日:03/01/08 17:53 ID:rLfxQ17l
   >>246
   いずれは。

301 名前:心得をよく読みましょう[] 投稿日:03/01/08 17:57 ID:zbarv++q
   >ひろゆき

   2ch閉鎖って考えたことある?

310 名前:ひろゆき ◆3SHRUNYAXA [] 投稿日:03/01/08 17:58 ID:rLfxQ17l
   >>301
   ラウンジが重いですとかいちいち電話してくる人がいたとき。

0267デフォルトの名無しさんNGNG
249 名前:ひろゆき ◆3SHRUNYAXA [] 投稿日:03/01/08 17:52 ID:rLfxQ17l
   >荒らしとか犯罪のためなの?
   そす。

246 名前:心得をよく読みましょう[] 投稿日:03/01/08 17:52 ID:BH998yxV
   >ひろゆき
   俺のお気に入りのスレとか荒されてるんだがそういうのにも有効?

257 名前:ひろゆき ◆3SHRUNYAXA [] 投稿日:03/01/08 17:53 ID:rLfxQ17l
   >>246
   いずれは。

301 名前:心得をよく読みましょう[] 投稿日:03/01/08 17:57 ID:zbarv++q
   >ひろゆき

   2ch閉鎖って考えたことある?

310 名前:ひろゆき ◆3SHRUNYAXA [] 投稿日:03/01/08 17:58 ID:rLfxQ17l
   >>301
   ラウンジが重いですとかいちいち電話してくる人がいたとき。

0268デフォルトの名無しさんNGNG
352 名前:ひろゆき ◆3SHRUNYAXA [] 投稿日:03/01/08 18:01 ID:rLfxQ17l
   悲しいときー。悲しいときー。
   正月に友人からエロゲーを借りて喜んで帰ってきたら、
   パソコンが壊れてたー。

   昨日ヨドバシカメラで部品買ってきて直しました。
0269デフォルトの名無しさんNGNG
ハサーン宣言・・・んなこたぁ無い・・・よな(;´Д`)
0270デフォルトの名無しさんNGNG
人を人と思わないコイツらの死に様は悲惨だろうな
0271デフォルトの名無しさんNGNG
スレ潰しでつか?
027297クラックNGNG
ファイルの先頭から0x42バイト目からがパスワードなので
パスワードを設定していないmdbの内容をパスワードが
設定されていると思われる文字数分コピーすれば…
0273デフォルトの名無しさんNGNG
IPとはなんですか?
0274デフォルトの名無しさんNGNG
>272
256はバイナリエディタなんざ持ってません。
0275デフォルトの名無しさんNGNG
吉と出るか、凶と出るか。。
0276デフォルトの名無しさんNGNG
うんこちんこまんこ
うんこちんこまんこ
0277デフォルトの名無しさんNGNG
457 :g056137.ppp.asahi-net.or.jp :03/01/10 00:44 ID:6BZCtvnU
ブラクラ。
名無しの頃には何回か。

というお粗末。
0278デフォルトの名無しさんNGNG
広告とか電話番号らしきものとかIPだかホストだかそんなんだったと思いまつ。
0279デフォルトの名無しさんNGNG
======2==C==H======================================================

         2ちゃんねるのお勧めな話題と
     ネットでの面白い出来事を配送したいと思ってます。。。

===============================読者数: 139038人 発行日:2003/1/10

なにやら、連日メルマガだしてるひろゆきです。

そんなわけで、ログ記録実験ですが、いちいちサーバ指定するのが面倒なので、
全部のサーバに入れてみました。

重くなって落ちたりしてもご愛嬌ってことで。。。

んじゃ!

────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50
────────────────────────────
0280デフォルトの名無しさんNGNG
要するに普通に雑談する分には今まで通りでかまわない。
むしろなんでも書き込んでいいと思うDQNがへるだけまし。

0281デフォルトの名無しさんNGNG
え!?あめぞうで過去に何があったの?
0282デフォルトの名無しさんNGNG
http://headlines.yahoo.co.jp/hl?a=20030109-00000021-zdn-sci

一応ニュースになるんだね。
0283デフォルトの名無しさんNGNG
公衆に向かって電波ゆんゆんなカキコを垂れ流す事では。
0284デフォルトの名無しさんNGNG
閉鎖〜閉鎖〜(´人`)ナムナム
0285デフォルトの名無しさんNGNG
うそをうそと
0286デフォルトの名無しさんNGNG
電波2chサイトのプレゼントでひろゆきサイン入りのカレンダーが貰える。
応募するには、電波2chのメールマガジンを登録するだけで良い。

さらに!驚くことにサイン入りカレンダーの他に、2chグッズが貰えると言う豪華さ。
新年早々良い事が有りそうだと思う人は申し込んで見よう!

http://dempa.gozans.com/backno/beta41/
0287デフォルトの名無しさんNGNG
自分に責任もてない奴もその能力のない奴も書き込みをするなってことです( ̄ー ̄)
0288デフォルトの名無しさんNGNG
http://wow.bbspink.com/test/read.cgi/feti/1039253916/

の522からなんか出てるんですけど
2chってこんなに変わるの?
0289デフォルトの名無しさんNGNG
レスありがとう。
俺素人だからよくわからないが
アク禁にしないのは何か理由るのかな・・?
0290デフォルトの名無しさんNGNG
2ちゃんねるに近いあるインターネット関連会社の社長は、
2ちゃんねるの幹部から得た話として証言する。
「2ちゃんねるは、運営者や幹部などが
それぞれ別々に会社を作りカネの流れを見え難くしているが、
実際の資金源は複数の大手通信会社系からの調査費名目のカネ。
月額で計約700万円と言い、年間にすれば1億円近く。
額はともあれ、これは通信会社系的には、
ぼう大なトラフィックを調査すると言う表向きの理由が一応は立つ。
自社系に都合の悪い書き込みがされた時に優先的に削除してもらうことも期待している」と前置きし
「通信会社系の削除の期待も含めて、2ちゃんねるは総会屋と同じになっている」と言うのだ。
0291デフォルトの名無しさんNGNG
ならない
0292デフォルトの名無しさんNGNG
そもそも削除人さんはボランティアなのにねぇ(^_^;)
言う事聞かないからって逆切れして、戦争(訴訟)に持ち込むなんて
正気を疑いますな(^_^;)
0293デフォルトの名無しさんNGNG
大分かかる
0294山崎渉NGNG
(^^)
0295デフォルトの名無しさんNGNG
そろそろ母と主治医と家臣がくるころかな。
0296デフォルトの名無しさんNGNG
Access2002でADOとDataGridコントロールを使用しています

ADOでレコードセットを取得した後、DataGridのプロパティに
レコードセットオブジェクト変数をまるごと代入したいのですが
適当なプロパティが見当たりません。

VisualBasicではデータグリッドコントロールにDataSourceという
プロパティがあるのですが、Accessにはみあたりません。

ADOでデータグリッドを使用するのが目的なので
なにかよい方法はないでしょうか?
0297デフォルトの名無しさんNGNG
Accessには、SQLServerのクエリアナライザみたいな物は無いんでしょうか?
SQLは発行出来るみたいなんですが、使いづらいです・・・。
0298デフォルトの名無しさんNGNG
パラメータークエリで、例えば、入力フォームに得意先企業名を入れる場合、存在しない名前を入れたらメッセージボックスで「入力された企業が見つかりません」と出るようにするにはどうすればいいのでしょうか?
isnull文という話も聞いたのですが、使い方がよく分からないので、ほかの方法があるのなら教えてくれませんか?
0299デフォルトの名無しさんNGNG
ACCESSがインストールされていない他のPCからデータにアクセスしたいのですが
どんな方法がありますか?
いろいろ調べてみたのですが、Httpd+ブラウザで可能の様ですが、他にもありますか?
クライアントは閲覧だけの単純な物です。
0300山崎渉NGNG
(^^)
0301デフォルトの名無しさんNGNG
ひょっとして>296-299って同一人物?
0302299NGNG
違います。
ODBCというのでアクセスできるみたいですが、
ネットワーク上の他のPCのとも通信できるのでしょうか?
0303デフォルトの名無しさんNGNG
>>302
VB Script で ADO 使ってテキストファイルに書き出すとか
MDBファイルにアクセスしたいならODBCは無視の方向で
0304299NGNG
>>303
いろいろ解説されたページが見つかりました。ありがとうございます。

ODBCのDSNの設定でネットワーク上のMDBを選択できるみたいなので、
これで直にアクセスすることも可能な様ですね。
各マシンにクライアントソフトを入れるよりhttpdをたちあげるほうが楽でいいのかな?
だいぶ見えてきました、ありがとうございます。
0305デフォルトの名無しさんNGNG
>304
ファイル共有型データベース(Access)とクライアント/サーバ型
データベース(SQLServer等)の違いについてしっかり勉強して
みると吉だと思いまつ。

Web化については、Accessのデータアクセスページという機能が
一番お手軽らしいです。が、私は使ったことがないれす。
0306デフォルトの名無しさんNGNG
Win2k Access2000です。

パラメータークエリにプログラム(VBA)内から値を渡したいのですが、
何かいい方法があるでしょうか?
ネットも探しているんですがなかなかいい方法が無い・・・・
もうちょっと探しては見ますが。。。

ご存知の方よろしくです。
0307デフォルトの名無しさんNGNG
>>306
クエリをSQLにしてVBAに記述、パラメータ部分に変数をあてる
0308いんかす ◆9qOjTgf4as NGNG
Text1.BackColor = 0
と記述するとフォームの全ての行の背景色が変わってしまします。
選択中の行だけを制御する方法を教えて下さい。

条件付書式は使用しないでVBAから制御したいです。
0309306NGNG
>>307
その方法はすでにわかっているのですが、
事情により、パラメータクエリがすでにかなり多く作成されています。
できればこのまま使いたいので、フォームに入力したデータを
そのままパラメータに渡す方法があれば、と思ったんですが・・・
0310296NGNG
こんにちは、グリッドコントロール使ってらっしゃる方いましたら
どんなふううに使用してるか教えてくれませんか?
0311デフォルトの名無しさんNGNG
>>309 mdbの場合こんな感じ。DAOを参照設定に追加して

dim qdf as dao.querydef
dim rs as dao.recordset

set qdf = currentdb.querydefs("クエリ名")
qdf.parameters("パラメータ名").value = "パラメータ値"
set rs = qdf.execute
0312デフォルトの名無しさんNGNG
指定した列を除くその他の列を指定するときはどんなSQLを書けばよいんでしょうか?
たとえば、こんな感じで書けたらいいと思うんですが。
電話番号以外のすべての列を取り出し。

SELECT * - PhoneNumber FROM AddressBook
0313デフォルトの名無しさんNGNG
サブフォームコントロールのSourceObjectの値をVBAで
変更しようとしたのですが、変更されません
どうしたらよいですか?

SubForm.SourceObject = クエリ1
SubForm.Requery

反映されません><
0314デフォルトの名無しさんNGNG
>>312
> 電話番号以外のすべての列を取り出し。

電話番号以外の全ての列を列挙する。

それぐらい面倒がるなよ。

それとも、フィールドの数が 100個もある、DQN DB 設計か ?
0315デフォルトの名無しさんNGNG
ODBC経由でログインするときにアカウントごとに権限を割り振ることはできますか?
ACCESSのユーザーアカウント情報は無視される様で、
データベースパスワードしか問われません。
0316デフォルトの名無しさんNGNG
>>315
むりぽ
0317デフォルトの名無しさんNGNG
板違いですまそ!!
WindowsXpでAccess2000って使えますか?
0318デフォルトの名無しさんNGNG
>>317
むりぽ
0319デフォルトの名無しさんNGNG
>>319
むりぽ

0320デフォルトの名無しさんNGNG
>317
自分で調べろ。
0321デフォルトの名無しさんNGNG
>>316
即答サンクスコ
0322320NGNG
>312
自分で調べ方があなたの為。
それ以上は言わない。
0323320NGNG
↑
>321充てだった。
間違えた。すみません。
0324デフォルトの名無しさんNGNG
パラメータクエリの結果ををCSVにエクスポートする作業をしているんですが、
エクスポートしようとすると、
「パラメータが少なすぎます。2を指定して下さい」
と出て出力してくれません。(パラメータ入力ウィンドウも出ない)
もちろんPC画面上ではパラメータを入力すればデータはちゃんと見れますし、
不思議なことにXLSにはちゃんと出力してくれました。

ちなみにクエリ上にパラメータは二つあります。
どなたか原因がわかる方はいますか?

ちなみにACCESS2000、Windows2000です

(今回は緊急だったのでとりあえずパラメータクエリをやめて、クエリデザインで定数を指定してCSV出力しました)
0325321NGNG
>>323
ってことはできるのかヨ!
サンクスコ
0326デフォルトの名無しさんNGNG
>>313
フォーム内のレコードソースだけを変えたいならこっち
SubForm.RecordSource=クエリ
SubForm.Requery

フォームごと変えたいなら
SubForm.SourceObject = フォーム名称
0327デフォルトの名無しさんNGNG
メインフォームの詳細部分に2つのサブフォームのどちらかを
ボタンのイベントか何かで表示させたとき、詳細部分の高さを
サブフォームの高さに合わせることはできるのでしょうか。

サブフォームを入れ替えることは出来ているのですが
2つのサブフォームの大きさがそれぞれ異なるため、
どちらの大きさにあわせても見た目が変になってしまいます。
どなたかうまいやり方を教えてください。
0328デフォルトの名無しさんNGNG
>327
hightとかいうプロパティいぢってみるよろし。
0329デフォルトの名無しさんNGNG
 いきなりの質問ですみません。
Access2002にdBase4のテーブルをインポートかけると、
フィールド名とレコード内データの全角文字が化け化けになっちゃいます。

 MDAC2.1 + Access97なら、化けずにインポート可能(らしい)との情報は
得ているんですが、Access2002へのインポートは、不可能なんでしょうか?

 BDEをいじったりしましたが、いよいよ、手がなくなっちゃいました(涙)

 もしどなたか、情報をお持ちでしたら、よろしくお願いいたします。
0330デフォルトの名無しさんNGNG
>>326
サンクス、なぜかエラーがでます
kueriはクエリの名前です
特にkueriをselect * from table;としてもいいですよね?
SubForm.RecordSource="kueri"
SubForm.Requery
SubForm.RecordSource=kueri
SubForm.Requery

0331321NGNG
>ODBC経由でログインするときにアカウントごとに権限を割り振ることはできますか?
どうやらコンパネのODBC設定で選択できそうな雰囲気。
0332山崎渉NGNG
(^^)
0333デフォルトの名無しさんNGNG
>>330
SubForm.Form.RecordSource = "kueri"
SubForm.Form.Requery
0334デフォルトの名無しさんNGNG
accessというより、データ型についてのみんなの意見をお聞かせて下さい。
日付データを扱っているんですが、
現在のシステムはテーブルによってTEXT型8桁と、DATE型
が混在しているというとんでもない状態になっています。
どちらかに統一しようかと思っているんですが、
皆さんとしてはどちらがお勧めですか?

自分の考えでは、DATE型だとデータ入力時に"/"を入れなければ入れないなど、
今までYYYYMMDDで入力してきたユーザーとしてみたら慣れなさそうな感じがしたので、
文字列にしてしまって、昔ながらの日付計算などを
やってしまおうかー とも考えているんですが・・

でもせっかくDATE型と便利な型もあるんだから使ったほうがいいのかな・・・
0335デフォルトの名無しさんNGNG
>>334
定型入力に9999\/99\/99;0;_を入れればいいのでは?
0336デフォルトの名無しさんNGNG
データの持ち方はどっちでもいい。システム内で統一されていればな。
スラッシュ無しで入力してもフォーカス外れるときに整形してやればええだけだと思うが・・・
0337デフォルトの名無しさんNGNG
別テーブル・クエリーを参照してのupdateがうまくできません。
SQLで書くと、
update A
set A.date = B.date
from B
where A.NO = B.NO
といった感じになると思うのですが、エラーになってしまいます。
更新クエリーを使っても、うまくできません。
0338デフォルトの名無しさんNGNG
test
0339デフォルトの名無しさんNGNG
AccessからOutlookの仕事をインポート/リンクすると、
件名フィールドが存在しないのですが、これって仕様?
予定表だとあるのに。
試した人教えて下さい。
0340デフォルトの名無しさんNGNG
誰か〜、Accessを勉強できるページを教えてください。
0341デフォルトの名無しさんNGNG
ちょっと質問です。
AccessとPostgreSQL, MySQL,Firebird, Oracle, MS SQL Server
との違いは何ですか?

これらのDBと比較してAccessを使うメリットとは何ですか?
0342デフォルトの名無しさんNGNG
>341
PostgreSQL, MySQL,Firebird, Oracle, MS SQL ServerはDBMSです。
AccessはDBMSではありません。
データベースのフロントエンドツールです。(これもちょっと語弊があるが。)
違うものなので、単純な比較もできません。
比較するなら、JetやMSDEでせう。

0343デフォルトの名無しさんNGNG
>>342
> 比較するなら、JetやMSDEでせう。
比較するならファイルメーカーだろ
0344デフォルトの名無しさんNGNG
>>341

> AccessとPostgreSQL, MySQL,Firebird, Oracle, MS SQL Server
> との違いは何ですか?

Accessユーザにはヴァカが多い。これが決定的に大きな違い。

> これらのDBと比較してAccessを使うメリットとは何ですか?

ヴァカでもそこそこ使えるし、出来損ないのなんちゃってシステムを荒築
できる。
0345デフォルトの名無しさんNGNG
非連結を多用する奴はうんこ
0346デフォルトの名無しさんNGNG
> これらのDBと比較してAccessを使うメリットとは何ですか?

これらのDBのフロントエンドツールとして
Accessを使う事が一番メリットが大きいのでわ。
0347デフォルトの名無しさんNGNG
データベースには、ファイル型とサーバー型DBMがある。

ファイル型はアクセス、DBASE、ファイルメーカーなどで
小型のパソコンなどで使われる

DBMはSQLサーバーなどと言われ、専用にコンピューターを用意するような
大型のシステムの中心になる。データの管理はDBMソフトが行なうので安心である
0348デフォルトの名無しさんNGNG
Access2000以降にDAOの参照設定するやつはウンコ
0349デフォルトの名無しさんNGNG
>>344
>>341はそんなことを聞いてないって事は冷静になればわかるよね。
Access使いを馬鹿だの何だの言う前に冷静になれよ、な?
0350デフォルトの名無しさんNGNG
仕事で使っててまわりヴァカばっかでストレスたまりまくってるんだよ。
愚痴ったっていいじゃないか。
0351デフォルトの名無しさんNGNG
>>350
> 愚痴ったっていいじゃないか。

マ板でやれよ。
0352341NGNG
Accessはフロントエンドツールとして、便利、ですか。
どもサンクス。
0353デフォルトの名無しさんNGNG
>>352
おれはMySQL使いだが、ほとんど常識だな。
0354デフォルトの名無しさんNGNG
>>384
フォームのサブオブジェクトの Recordset は2000でもDAOのオブジェクト
でしょ?

>>364
Accessって、凝ったことをやろうとすると急に難しくなるのよ。
なれてて定石を組み合わせてつくれるんならいいけど、プログラマが
甘く見て取りかかるとはまる。
0355デフォルトの名無しさんNGNG
なんかいきなり、
開くと「モジュールが見つかりません」ってエラーがでるようになってしまったんでつが、
こういう場合はどうしたらいいんでしょうか。
0356デフォルトの名無しさんNGNG
>355
まずは新しいMDB作ってそこへ全モジュールインポート。
動けばバンザイ。
0357デフォルトの名無しさんNGNG
>>356
今回はちょっと前のバックアップから戻してしまったので、
今度なってしまったら試してみます。
0358デフォルトの名無しさんNGNG
あ、いやバックアップがあるならそれ使うのが一番ダス。
0359デフォルトの名無しさんNGNG
Q1.Access からOracleのデータベースに接続する方法にはどのような方法がありますか?
Q2.ADO、oo4oという方法が在ると聞きましたが、DOAでも可能ですか?
Q3.oo4oだと「Variantになってしまうのでデバッグが面倒くさい」らしいのですがそんなものですか?
Q4.oo4oってつかえますか?
0360デフォルトの名無しさんNGNG
>>358
「ちょっと前」ってのが問題なので、最新のものからサルベージできるならそ
れに越したことはないのです。
0361デフォルトの名無しさんNGNG
>359
A1 最近のトレンドは無線LANですね。
A2 DOAといえばエロバレーです。
A3 えてしてデバッグはメンドクサイものです。
A4 私は使えません。
0362デフォルトの名無しさんNGNG
>>348
アップサイズ予定の無い Jet データベース用に ADO 使う奴がウンコ
0363デフォルトの名無しさんNGNG
フォームにボタンくっつけてそれを押したら
サブフォームに表示されるものが変わるってのはどうすればよろしいの?
0364デフォルトの名無しさんNGNG
>>359
Accessでoo4oとか使うメリットないよ。
やるならVBにしたほうが。
>>354
参照設定しなくても使えたよ。
>>362
ウンコ発見
0365デフォルトの名無しさんNGNG
>>363
どう変えるの?
サブフォーム自体変えるの?
それとも表示されてるデータを変えるの?
0366デフォルトの名無しさんNGNG
>>365
表示されるサブフォームを別なものに変えたいのです。
0367デフォルトの名無しさんNGNG
Private Sub ボタン_Click()
  subForm.SourceObject = "フォーム名"
End Sub
0368デフォルトの名無しさんNGNG
>>367
どうもです。早速やってみます。
0369デフォルトの名無しさんNGNG
いきなりの質問ですいません
Access2kを使用しているんですが、どの様な方法で以下のような処理をすればいいのかわかりません

●現状
フィールドAに商品名(2桁)
フィールドBに顧客コード(6桁)
が入ったテーブルを作りました
現在2500レコード位あります。
当然商品名にはダブリが出ています(商品コードは60種類位)
顧客コードはダブっていません。

で、このテーブルをすっきりさせる為、一つの商品コードに対して、
その商品の顧客コードを/区切りでつないで、一つのフィールドにまとめようと
思っています。
うまく言葉で説明できているかどうかわからんないので、例を書きますと

A    B       A    B
01    000001     01    000001/000002
01    000002  →  02    000003/000004
02    000003
02    000004

このような形です。
1件2件でしたら力ずくでコピペする方法もあるのですが、2500件ともなりますと・・・
初心者なので、こういった処理ができるかどうかもわからないで質問しておりますが、
どうぞよろしくご指導の程お願いいたします。
0370あNGNG
>370

Dim rst As DAO.RecordSet
Set rst=CurrentDB().OpenRecordSet("SELECT * FROM Table_Name Order By A",dbOpenSnapShot)

Do until rst.EOF
rst.Edit
'ここになんか書く!めんどくさくなったので俺はや〜めた。
'371よ、後は頼んだ。
rst.Updata
Loop
0371デフォルトの名無しさんNGNG
そんなフィールド作っても意味がないと思われ
0372デフォルトの名無しさんNGNG
>>369
フィールドは全てテキスト型だよね?
ということで、テーブル名をテーブル1、2つのコードのフィールド名をそれぞれAとB、
コードをまとめるために新しく作ったフィールド名をCすると、
クエリーのSQLビューから下のを貼り付けて、テーブル名やフィールド名を変える必要が
あれば変えてからクエリー実行。

UPDATE テーブル1 SET テーブル1.C = [A] & "/" & [B];

でも余計な心配かもしれんけど、371が言うように設計自体に問題あるかもよ・・・。
0373デフォルトの名無しさんNGNG
設計以前の問題のような気が・・・(´д`;)
0374QQNGNG
だれか助けてください!
ACCESS97でEXCELブックを読み込み、テーブルに書き込む処理を書いたんですが
途中でEXCELがハングしてしまいます
普通にCreateObjectして操作してるのですが
データ量が増えると駄目みたでして・・・
こんな障害例ってないですか?
0375デフォルトの名無しさんNGNG
http://www.agemasukudasai.com/bloom/
0376デフォルトの名無しさんNGNG
>374
つうか、せっかくAccess使ってるんだから単純にリンクせぇよ。
0377デフォルトの名無しさんNGNG
>>374
EXCELブックをCSVに変換してから読み込めば
0378372NGNG
>>369
あー今気づいたけど、意味取り違ってたみたい・・・すんまそ。
方法はあると思うけどやっぱりそれは無茶な設計なのではないかと・・・。
0379デフォルトの名無しさんNGNG
アクセスでSQL扱う時、うちの会社では
文字型フィールド(テキスト型、メモ型など)にデータを入れるとき
" (ダブルクォーテーション) でなく
' (シングルクォーテーション)を使っています。
これっていいのでしょうか?
例)
TableName は数値型のAとテキスト型Bの二つの列を持ちます。
このテーブルに
Aが999、Bがテスト という一件のレコードを追加する時、

INSERT INTO TableName Values(99,"テスト")
と発行するのが通常だと思いますが、うちの会社では
INSERT INTO TableName Values(99,'テスト')としています。
社内ではオラクルも扱うのでまぁ便利といえば便利ですが、
直感的にまずい気がしています。
ずばり、Accessに対してSQL文でレコードを追加する際、
文字列型の値は " でなく ' で囲んで安全が保証されるのか?
ということをお聞きしたいのです。
よろしくお願いします。
0380デフォルトの名無しさんNGNG
SQL は ' (シングルクォーテーション) でくくるのが普通なので会社が正しい。
0381379NGNG
>380
レスありがとうございます。
では、Accessに対して
' (シングルクォーテーション) でくくる意味は
全くないと理解してよろしいでしょうか?
0382デフォルトの名無しさんNGNG
>>369
基本設計に戻って考えた方がいい
販売管理の定番のファイルだと思う
マスターを別に持ってマスタ登録済み以外を入力させないようにする
商品マスタ、顧客マスタ、売上データファイル
0383379NGNG
>381
すみません。

>' (シングルクォーテーション) でくくる意味は
>" (ダブルクォーテーション) でくくる意味は
の間違いでした。
まとめておくと、

AccessでSQL発行する時に
文字型フィールドに対して
' (シングルクォーテーション) で囲めばよい。
" (ダブルクォーテーション) でなければならない囲む理由はない。
という風に理解してもよろしいでしょうか?
お手数おかけします。
0384デフォルトの名無しさんNGNG
  ADOでJETをアクセスするんだけど、検索スピードが無茶遅い。
 どうしたら、速くできるかおしえて。
0385デフォルトの名無しさんNGNG
>>384
DAOを使う
0386デフォルトの名無しさんNGNG
>384
遅い所を探す所からはじめれ。
どうせインデクスが無いとかそういうオチなんだろうけどな。
0387デフォルトの名無しさんNGNG
JET→SQLServerに変更。
0388デフォルトの名無しさんNGNG
ますます遅くなるに一票
0389デフォルトの名無しさんNGNG
>>384
それだけの情報でアドバイスできるか、アフォ!
0390デフォルトの名無しさんNGNG
フフッ素人どもが。
確かに>384が提供している情報はアフォみたいに少ないが、
俺様なら絶対に早くする為の秘策をアドバイスできるぜ。



早いCPU買え
早いHDD買え

どうだ>384、早くなっただろう?
困ったらまた俺様に聞きな。
0391デフォルトの名無しさんNGNG
>390
フフッ素人が。

メモリ増設しろ

が、抜けてるゼ。
0392あNGNG
>391
フフッ素人が。
もっと的確なアドバイスがあるだろう。

窓から(以下略
0393デフォルトの名無しさんNGNG
プログラム上で追加クエリ実行時の「追加しますか?」のメッセージを消す方法ありますか?
ACCESSのオプションでチェックをはずせば消えるのは知っていますが、
クエリによっては確認上出したい個所もあるので。

Win2K,ACCESS2000です。
0394デフォルトの名無しさんNGNG
>>393
ヘルプを「警告メッセージ」で検索
0395393NGNG
>>394
Thanks!!
0396デフォルトの名無しさんNGNG
Access2Kをつかっているんですが、ちょっとでかいめのDBを作ると、
すぐに壊れるんですが・・・
150Mを超えた辺りから不安定になり、500M以上ならば、ほぼ3〜4回に一度はクラッシュ!
今はなるべく小分けしたDBを使って対処してますが、作業効率が落ちまくって
仕方ありません。
97の時はこんな事なかったんですけどねえ・・・
2002は2Kに比べたら安定してるんでしょうか?
それによっては購入も考えたいと思っていたりします。
使った事のある人がいたら、教えてください。
0397デフォルトの名無しさんNGNG
>>396
MSDEを使え
0398デフォルトの名無しさんNGNG
1週間前にAccessをはじめました。
本の73ページを参考に作っているのですが、更新クリエでエラーになります。
何が間違っているのか全然わかりません。
初心者なのでわかりやすく教えてください。
0399デフォルトの名無しさんNGNG
>396
うち、2000で1G超のMDB使ってるけどそんな現象無いな。
そうじゃなくても、100メガ程度でDB破損が頻発するなんざ
いくらAccessでもありえないと思うけど・・・

ひょっとして、複数クライアントでMDB共有してるとか?
0400デフォルトの名無しさんNGNG
>398
Accessの本は世の中に1冊しか無いと思ってるようですね?
0401デフォルトの名無しさんNGNG
>>400

1冊しか刷らない書籍ってあるのか?(w
定価200万ぐらい付けないとコストを回収できないだろ?(w
0402396NGNG
>>399
その通りです。
現在10ユーザー位で共有して、てんでバラバラのタイミングでクエリの実行とか
行っているんですが・・・
これが原因なんでしょうか?
0403399NGNG
>402
やっぱりw
97ではOKで2000だとNGってのがよくワカランけど・・・
基本的に、MDBをマルチユーザで動かすのはリスキーなものだと思っておいた方がいいよ。
運用や設計によっては問題なく動かせるらしいけど、そんな事に労力払うくらいならMSDEや
SQL鯖へ移行した方がずっと楽だと思う。
0404396NGNG
>>403
なるほど
考えてみれば、97時代はスタンドアローンでDBを管理していたのですが、
2Kになってから共有するようになっておりまして・・・。
問題は2Kではなくて、環境だったんですね。
適切なアドバイスありがとうございます。

ところで、MSDEというのは導入するとなると、どれくらい費用がかかる
物なのでしょうか?
正直、予算的には厳しい環境の中で仕事をしているので、なんともいえないの
ですが、クラッシュしなくなるんであれば、かなりの効率アップにつながると
思う物で・・・

申し訳ありませんが、よろしくお願いします。
0405デフォルトの名無しさんNGNG
ttp://www.zdnet.co.jp/help/howto/win/win2000/0007special/complus_vb/chap3/13.html
>Visual Studioのユーザー(Professional Edition以上,Visual Basic,
>Visual C++,Visual InterDevといった単体製品でも可)であれば,Microsoft社のMSDEのページ
>http://www.microsoft.com/japan/developer/vstudio/msde/)からダウンロードするか,もしくは
>CD-ROMを実費で郵送してもらうことで,MSDEを入手できる。MSDEは,Office 2000 Developerおよび
>Visual Studioを使って自ら開発した製品とともに,無償で再配布できることになっている。

って事なんで、基本的にタダ。
0406396NGNG
>>405

をを!
ありがとうございます!
早速ダウンロードして試してみます!
0407デフォルトの名無しさんNGNG
MDB壊さないコツはモジュールやフォームとファイルを分けること。
0408デフォルトの名無しさんNGNG
>>407
俺はそう主張したが、
1ファイルにしてくれと言われた。
0409デフォルトの名無しさんNGNG
>>407
ウチはそれやってるけど壊れるときがあるよ

ネットワーク共有のmdbではレスポンスが悪いし、
たまに壊れるのでMSDE+ADPに移行中です。
0410デフォルトの名無しさんNGNG
Win2K,ACCESS2000です。

ADOのレコードセット使っている時、
現在のレコードセットに格納されている件数を取得するプロパティみたいなのはありませんか?
ループで回してカウントするってのは無しで・・・・

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

※RecordCountは違った・・・・それっぽかったのに(涙)
0411デフォルトの名無しさんNGNG
rst.recordcount
0412デフォルトの名無しさん NGNG
NT4、ACCESS97のMDB(プログラム)から
ORACLEにリンクしたMDB経由でORACLEにアクセスしています。
処理内容はバッチ処理で、ファイルを開くと勝手に実行する仕組みになってます。

で、自分でMDB(プログラム)をダブルクリックして実行するとちゃんと動く。

が、ATコマンドでスケジューリングして実行しようとすると、
「3151 ODBC--<名前> への接続は失敗しました。 」
となる。

コマンドは
「AT hh:nn /INTERACTIVE "D:\UntaraKantara\PGM.mdb"

これは何が原因(・∀・)ナンデショ?
0413デフォルトの名無しさんNGNG
恐ろしいことする奴だな
0414デフォルトの名無しさんNGNG
>412
ATコマンドってデフォルトではシステムアカウントで実行するからじゃないかな。
ログオンアカウントを設定してみては。

コンパネ→サービス→Schedule→ログオンのアカウント
0415デフォルトの名無しさんNGNG
http://www.agemasukudasai.com/bloom/
0416デフォルトの名無しさん NGNG

        人
      (_)
      (___)  よいちょ、よいちょ
     (,,・∀・)
      ( O┬O
 〜  ◎-ヽJ┴◎  キコキコ

0417デフォルトの名無しさん NGNG

    人
   (__)
  (__) 
  ( ・∀・) >>414 ありがとごじゃます

0418デフォルトの名無しさん NGNG

        人
      (_)
      (___)  よいちょ、よいちょ
     (・∀・,,)
     O┬O )
    ◎-しノ┴◎  〜 キコキコ
0419デフォルトの名無しさんNGNG
Accessで自作した顧客DBを外でも閲覧、更新したいと思い
WindowsCE系のPDAの購入を考えてますが
Pocket AccessがAccessとデータの互換性がなかったり
M$サイトに「SQL Server CEならエキサイティングなエクスペリエンス」
とか言われて日曜プログラマな自分は途方にくれます。
WindowsCEでAccessを使うような話題を扱ってるスレとか
サイトを知ってる人いたら教えてください。
0420デフォルトの名無しさんNGNG
>419
ttp://www.wince.ne.jp/
たぶん↑が一番大御所。
この板にもCEスレあるでよ。
0421デフォルトの名無しさんNGNG
ACCESSとはちょっと違うかもですが、
レコード長が2000バイト以上、項目数が256を超える固定長データを
取り込まなければならなくなりました(AS/400の固定長データなんですけど)
ここの住人ならご存知だと思いますが、明らかにACCESSにインポートできるデータではありません。
そこで、SQLサーバに取り込もうと思い、
SQLサーバのエンタープライズマネージャーのインポートウィザードで、固定長ファイルを
インポートしようと思ったのですが、
エンタープライズマネージャーにはACCESSでいうところの「インポート定義」
見たいなものはないんでしょうか・・・?

また、ACCESSで上記のような長いレコードを取り扱わなければならなくなった場合、
皆さんだったらどのようにしますか?(分割するってのは無しです)
やっぱりSQLサーバを使うしかないんでしょうか・・・?

ちなみにACCESS2000です
0422デフォルトの名無しさんNGNG
>>421
エンタープライズマネージャの件は質問の意図を汲みかねるが、
DTSインポートウィザードの「変換元テーブルの選択」で「…」をクリックする。
ってことでよいかな(こっちの環境はは7.0なので2000は知らん)
これが使えないならVBで1件ごと読み込んで書き込めばよいのでは

Accessで扱えない長いレコードを複数のテーブルに分割するのがNGなら、
他のRDB使う以外に解決策は無いと思うが>>421は何を期待しているのだ?
0423421NGNG
>>422
分かりづらい文章でスミマセン(−−;)
とりあえず、RDBはSQLサーバを使います。

DTSインポートウィザードは分かりますが、
これだと固定長フィールド列の定義をインポートする度に行わなければなりません。

あらかじめ別所で固定長データの桁数定義をしておき、
それを読み込むと自動的に固定長データが項目ごとに分割される
という機能を探しています。要するにACCESSのインポート定義みたいなやつです。
(毎月同じ形式の固定長データを読み込むため)

プログラムを使うしかないのかな・・・・
0424デフォルトの名無しさんNGNG
>>423
DTSパッケージを保存すればよい。
0425デフォルトの名無しさんNGNG
固定長のファイル処理なんてプログラムの基礎中の基礎だろ。
CSVにするだけでも扱いが全然違うじゃん。
毎月実行するなら面倒くさがらずに作れよ!

DTSとかMSツール使ったところで、結局その枠の中で右往左往しなきゃならん。
とりあえずSQLサーバなんていってるくらいだから処理の内容は見当がつくよ。
VBAなんかでPCで扱えるデータとして一般化しておけ。
作りたいデータはその過程で簡単で処理できるはず。
0426デフォルトの名無しさんNGNG
固定長データが一般的じゃないって言ってるのか...?
0427デフォルトの名無しさんNGNG
ほんとにAccessユーザーってのはナメてるのが多いな
0428デフォルトの名無しさんNGNG
>>427
まあな。
0429デフォルトの名無しさんNGNG
反論されないと面白くない。
0430デフォルトの名無しさんNGNG
まぁ、あれだ。
ム板スレでプログラム使わずに何とかしたいっつーのがな・・・。
0431422NGNG
>>421がかわいそうになってきたので、より具体的なアドバイス

DTSパッケージをファイルに保存してVBで操作するのが
プログラムが簡単で処理速度も結構速いと思うよ。
とりあえず、421はSQL Serverの勉強をがんばれ
0432デフォルトの名無しさんNGNG
うまくいきません。
どうしたらいいですか・・・。
誰か教えてください。
0433デフォルトの名無しさんNGNG
>432
漫然としすぎて釣れないよ。
0434デフォルトの名無しさんNGNG
>>432
別MDBにインポートしなおせ
0435デフォルトの名無しさんNGNG
テキスト、バイナリの区別なく色々なファイルを丸ごと入れられる
フィールド型ってありますか?
メモ型かOLEオブジェクト型かですかねぇ。
0436デフォルトの名無しさんNGNG
>>435
四次元ポケット型が便利。
(参照設定で「ドラえもん」を追加する必要あり)
0437デフォルトの名無しさんNGNG
MS-Access2000にADO-ODBC経由で文字をカキコしてますが、UNICODEになったそうですね。

Access2000で開いても、ODBCツールで開いても文字が読めます。
内部で格納されてる型はUNICODEでしょうか。
普通片方では化ける筈なんですが、なんとなく、内部で勝手に文字コード変換やってそうで、
文字列長なんかではまりそう。
0438bloomNGNG
http://www.agemasukudasai.com/bloom/
0439デフォルトの名無しさんNGNG
>>437
ミドルウェア(データアクセスツール)の選択が変。
ADOでJetを使うなら、ODBCプロバイダではなく、Jet OLEDB 4.0を使うべき。
0440デフォルトの名無しさんNGNG
長文質問失礼します。

使用環境 Access2000 + ADO(今回は関係ないかも) + Win2000

レポートにおいて、ページフッターとレポートフッターの表示(Visibleプロパティ)を
切り替える処理をしています。各ページにはページフッターでページの単価の合計を
印刷、最後のページだけはページフッターを非表示にして、レポートフッターのみを
表示し、全体の合計を印刷する処理です。

レポートのデザイン上、詳細セクションの大きさは常に一定になっています。
下から4分の1ほどの大きさにページフッター、もしくはレポートフッターが印刷され
るような形です。

ここから質問なんですが、ページフッターセクションのVisibleプロパティを
フォーマット時イベントで切り替えてもプレビューに反映されません。

そのセクションのフォーマットイベントでは自セクション自体の可視プロパティは
有効にならないんでしょうか?

もう一つ、不思議な挙動があるのですが、プレビューが呼ばれる前にフォーマット時
イベントが数回呼ばれるようですが、これはなぜなんでしょうか。このときにpagesプロパティ
などを取得しようにも、0が代入されていたりとよく分かりません。

以上、どなたかよろしくご教授ください。
0441440NGNG
>>440
で質問させていただいたものですが、一応ソースを載せますと

If Me.page < Me.Pages Then
Me.Section("ページフッターセクション").Visible = True
Else
Me.Section("ページフッターセクション").Visible = False
End If

上記のような単純な処理なのですが・・・

宜しくお願いします。
0442デフォルトの名無しさんNGNG
>>441
ページフッターセクションのフォーマット時イベントプロシージャの先頭に

  If Page = Pages Then
    Cancel = True
    Exit Sub
  End If

を追加すれば、最終ページでページフッターセクションが実行されない。
0443440NGNG
>>442さんありがとうございます。
確かにかかれていたコードでページフッターの処理は飛ばせました。
が、更なる問題が発生しました。

状況としては最終ページがレポートフッターのみ印刷される状態になっています。

原因は、プレビューを実行したときに一ページ目が表示される前に
フォーマットイベントが起き、憶測ですが一通りのページがフォーマット
され、全ページ数が決定されるようですが、この時点では"Pages"プロパティ
に値が入っていないため"Page=Pages"の評価が正しく行われません。
よって、本来は最終ページにはページフッターじゃなくレポートフッターのみ
印刷されるところが、両方印刷されてしまい、結果的にレポートフッターが
入りきらず最終ページに印刷されてしまいます。

もう一度だけヒントだけでもいただければと思うのですが。
0444デフォルトの名無しさんNGNG
レポート自体のプロパティにあるページフッターってやつを
「レポートフッター以外」に設定すればいいんじゃないのか?
0445デフォルトの名無しさんNGNG
ACCESSの中で書いたプログラムソースを一気に全部まとめて
TXT形式とかで出力する方法ってないですかね?
0446440NGNG
>>444さんありがとうございます。
そのプロパティは私も試しましたが、うまくいきませんでした。
プレビューを実行したときには、多分ですがそのプロパティに関わらず
すべてのページに対してページプロパティを表示してしまうからだと思います。

1ページ目
┌────────┐
│ヘッダー    │
│詳細 高さ固定 │
│ページフッター │
└────────┘
2ページ目
┌────────┐
│ヘッダー    │
│詳細 高さ固定 │
│ページフッター │
└────────┘
3ページ目
┌────────┐
│ヘッダー    │
│レポートフッター│
└────────┘
私のレポートデザインで上記プロパティをレポートフッター以外に
設定しても上記のようになります。
詳細セクションが短くページフッターとレポートフッターが
同一ページに収まるような場合は期待した動作をするのですが。
やはり無理でしょうか?
0447444NGNG
>>446
なるほど、やっかいな話だな。
Accessではその3ページ目を「最後のページ」として認識してしまうわけか。

ちょっと面倒だが、レポートを開く時のイベントプロシージャで
本来の総ページ数を取得するロジックを組んでおいて、
それを>>442氏の[Pages]の代わりに当てはめてみたらどうだろうか。

  If Page = p最終 Then
    Cancel = True
    Exit Sub
  End If

自分で試した訳ではないので、上手くいくかどうかはわからないが・・・。
というより、もっと楽な方法もありそうだが・・・。

役に立てそうになくてスマソ
0448444NGNG
>>447
自分としても今後ぶち当たりそうな問題だったので色々と試してみた。
結果、>>446の方法じゃやっぱダメ。

その代わり、[p最終]を「ページヘッダー」の「印刷時イベント」で
次のようにさせてみたら上手くいってくれたみたいです。

If Page = p最終 Then
  Me.ページフッターセクション.Visible = False
Else
  Me.ページフッターセクション.Visible = True
End If

そのかし、これだと[Pages]は相変わらずのままなので、
レポート上で表示させるときは -1 させたるしかないようだ。

ちなみに上の構文を「ページヘッダー」の「フォーマット時」で
試してみると、なぜか上手くいかないのであった。
0449440NGNG
>>444さんありがとうございます

448のVisibleプロパティを変更する方法で取り急ぎ試してみまして、
イメージどおりになりました。

もう少し、時間をかけて試してみますが、すばらしいヒントありがとうございました。

イベントの呼び出し順やフォーマット時と印刷時の挙動の違いなど謎は多いですね。
印刷時イベントに設定すると若干の副作用が出ますが、これはしょうがなさそうですね。
0450440NGNG
449に追加です。

全2ページ以上の場合はうまくいくのですが、1ページだけの場合だと
やはりうまくいきませんでした。

1ページ目にはページフッターは確かに表示されないのですが、レポートフッター
は2ページ目に表示されてしまいます。

なんとなくですが、"レポートフッターを印刷するページをAccessが決めるタイミング"と
いうものがあり、各ページのフォーマットイベントなんかよりも前にそのイベントが起き、
その後に、フッターなどを非表示にしても、レポートフッターを印刷するページ自体は
変わらないので、2ページ目に印刷されてしまうのだと思うのですが、如何なものでしょうか?

さらに、"レポートフッターを印刷するページをAccessが決めるタイミング"というのは
1ページ目の情報を元に決定されるようです。

多分この辺でおかしくなるんだと思うのですが・・・

なお、フッター処理をキャンセルさせても一緒でした。
0451444NGNG
>>450
解決できたです。

[p最終]を取得した時点で「1ページしか無い」と判断した時、
その場で「ページフッター」のVisibleをFalseにしちゃいます。
後は、「ページヘッダー」の「印刷時イベント」で
Trueに戻したりすることの無いように調整すればいいです。

この場合は、ちゃんと[Pages]は1として扱ってくれてるみたい。
っていうか、こんなにヒネたつくりしてると、
他にも色々と問題が出てきそうでなんかこわい。

>>440氏には悪いけど、こういう使い方はするべきではないのかも知れないね。
Access経験の深い賢者たちの意見を求む。
0452デフォルトの名無しさんNGNG
>>445
漏れも知りたい。COMでも使うしかないのかな?
0453デフォルトの名無しさんNGNG
>>445 試してないが、Application.VBE.VBProjectsの中でも探ってみたら?
0454440NGNG
>>444さんありがとうございました。
大変助かりました。

確かに使い方としてはスマートじゃないですね。

しかし、今回のようなケースというのは結構あるような気がするの
ですけど、なかなか検索してもでてきませんし、あっても可視の切替の
ソースが載ってて中途半端で説明が終わってる気がします。

今回問題なのは、詳細セクションが固定で、フッター部分にはページorレポート
フッターいずれかしか印刷スペースが無いということですよね。

もう少しいろいろ試してみます。最悪の代替策としては、レポートフッターは
使わず、ページフッターに両フッターで表示するコントロールを配置し、最終ページ
かどうかで各コントロールの表示を切り替えるという方法ですが、デザイン時に
コントロールが重なって作業しにくい or レポートフッターの意味があまり無くなってしまう
というのが気になり、レポートフッターとページフッターの切替を考えていました。

今回はいろいろと教えていただきありがとうございました。
0455デフォルトの名無しさんNGNG
主キーとインデックスの違いが分からないのですが。
あと、Accessのインデックスって複数のフィールドにまたがって
作ることはできますか?
0456デフォルトの名無しさんNGNG
>>455

プライマリキー
レコードの一意識別子。同一キーを持つレコードが重複しないことを
保証するためのもの。


インデックス
索引のこと。文字通りで、データ検索の効率を高めるためのもの。
該当列のカーディナリティが高く、一般に検索条件に対するヒット率
(該当件数 / 母数)が低い方が効果が高い。
例えば、男女のデータがほぼ同数の場合、「性別」にインデックスを
付けても効果がない。
「カナ氏名」、「郵便番号」、「住基番号」、「会員番号」等は効果
が大きいと考えられる。(データの性質、アプリケーションの性格にも
よるので一概には言えない)
検索条件に使用しない列にインデックスを付けるのは意味がない。
また、更新処理は、インデックスを追加すると遅くなるデメリットが
ある。

> Accessのインデックスって複数のフィールドにまたがって作ることは
> できますか?

当然、できる。
それができないRDBは到底実用に耐えられない。

0457デフォルトの名無しさんNGNG
Access2000でテーブルに1000分の1秒までを表示できるようなカラムを作りたいのですが、
Excelではセルの書式を"mm:ss.000"で出来たのですが
同じようにデータを入力させるにはどうしたらよいのでしょうか?

0458デフォルトの名無しさんNGNG
コミット、ロールバックのやり方がわからなくて
困っています。

BeginTrans
DoCmd.RunSQL("INSERT INTO TESTTBL VALUES(1,'TEST')")
Rollback

これではロールバックされません。
他データベースに対しては
WorkSpaces(0).BeginTrans みたいにするようなのですが、
自分自身のWorkSpaceオブジェクトの取得方法がわかりません。
もしかしたら見当違いのこといってるかもしれません。
CurrentDB.BeginTrans みたいな感じかと思っていたのですが、
そのようなメソッドもなく困っています。

アクセスVBAでの更新処理はどのようにすればいいでしょうか?
0459デフォルトの名無しさんNGNG
>>458

> BeginTrans
> DoCmd.RunSQL("INSERT INTO TESTTBL VALUES(1,'TEST')")
> Rollback

Set db = DBEngine.OpenDatabase(strFileName, Options....)

DBEngine.WorkSpaces(0).BeginTrans
db.Execute "INSERT INTO MANKO VALUES(1,'TIMPO!')"
DBEngine.WorkSpaces(0).Rollback

ごめん、説明するのがめんどくさいから、後は、ヘルプ読むなりして
自分で調べてくれ。
0460458NGNG
>459
ありがとうございます。
Docmd.RunSQLで実行するとしか頭に無かったので
思いつきませんでした。
アクセスに直接書いているから
わざわざOpenDatabaseしなくても
他の方法が定石なのかと思っていました。
ありがとうございます。
0461デフォルトの名無しさんNGNG
Set ws = DBEngine.Workspaces(0)
Set db = ws.Databases(0)

ws.BeginTrans
db.Execute 云々
ws.Rollback

ホントはこうやって使う
0462459NGNG
>>461
ですね。仰る通り。m(_ _)m

> Set db = DBEngine.OpenDatabase(strFileName, Options....)

動作確認してないけど、これ↓ならOK??

Set db = DBEngine.WorkSpaces(0).OpenDatabase(strFileName, Options....)

0463デフォルトの名無しさんNGNG
AccessのSQLで、抽出したいデータに自動で順位をつけて、
しかも「その順位の何位から何位までを取り出す」
という条件を付けたいのですが、下記のように
するとデータが増えれば増えるほど遅くて使い物になりません。
Accessでという限定つきですがほかに良い方法ありませんでしょうか。

※「クラス」テーブルの「名前」フィールドを名前順にソートし、
順位付けして10位から20位まで出す例

SELECT b.名前, (SELECT Count(*) FROM クラス AS a WHERE a.名前<b.名前) AS 順位
FROM クラス AS b
WHERE (SELECT Count(*) FROM クラス AS a WHERE a.名前<b.名前)>10
AND (SELECT Count(*) FROM クラス AS a WHERE a.名前<b.名前)<=20
ORDER BY 名前;
0464458NGNG
>461-462
ありがとうございます。
参考になりました。

>動作確認してないけど、これ↓ならOK??
>Set db = DBEngine.WorkSpaces(0).OpenDatabase(strFileName, Options....)
↑OKでした。

なるほど、WorkSpaceオブジェクトでトランザクション処理を制御してるみたいですね。
>461
>Set db = ws.Databases(0)
なるほど、こうやってDatabaseオブジェクトを取得する方法もあるんですね。
ん?としたらws.Databases(0)=CurrentDBってことなんですね。
とある情報ではなぜかまではわかりませんでしたが、HelpによるとAccess2000では
「CurrentDbメソッド」を推奨しているらしいので(私のヘルプはなぜか破損していて見れませぬ。。)
Set ws=Workspaces(0)
Set db=CurrentDB
ws.BeginTrans
なんらかの処理
ws.RollBack
のようにトランザクション処理を制御するのがベストだと思います。
勘違い等、指摘していただけると助かります。



0465459NGNG
>>462 の例はCurrentDb上にない(リンクテーブルもない)外部データベースを想定した例。
0466デフォルトの名無しさんNGNG
今まで、ACCESS2000+MSDEで開発してました。
データの処理はほとんどVBAからはSQLを書かず、ストアドでやってたんですが
今度MSDEを使わずDBもMDBを使って開発することになりました。
クライアントとサーバーのMDBは当然分けるとして、ストアドが使えないから
VBAでSQLを書いてやろうと思ったんですけど、サーバーのMDBにクエリーを作って
クライアントのMDBから、ADOXを使ってサーバーMDBのクエリー動かしてストアドのようにしようかなぁと
ふと、思ったんですけどどうでしょうか?
SQL投げるよりクエリーの方がコンパイルされてて早いって聞いたし、
データの流れる量も少ないかと・・
ひとつ不安なのはデータのMDBは普通テーブルしか置かないと思いますけど、
クエリーを作ってがんがん実行させて耐久性とかやっぱ落ちちゃうのかなぁって思ってます。
皆さんの意見を聞かせてください。

0467デフォルトの名無しさんNGNG
>>466
基礎から勉強することを激しく勧める
0468デフォルトの名無しさんNGNG
その用途でMDB使用を選んだ奴を小一時間問い詰めろ。
おまえ、ファイル共有型とC/Sの違いを理解してないだけちゃうかと。
それでもMDBで行くというなら逃げろ。全速力で。
0469466NGNG
>>467,468
やっぱりね・・。
そういわれると思ったよ。でも、理由は言ってくれないんですよね。
(わかんねーのか。)
0470デフォルトの名無しさんNGNG
わかってないのは君。

ttp://www.int21.co.jp/pcdn/vb/noriolib/vbmag/9911/packet/
を穴があくまで読んでからもう一回出直して来いよ。
0471デフォルトの名無しさんNGNG

>>470

> 穴があくまで

セキュリティホールでも開けるのか?(w
0472デフォルトの名無しさんNGNG
メモ型にバイナリデータって入りますか?
0473あぼーんNGNG
   ______________
 /:\.____\
 |: ̄\(∩´∀`) \  <先生!こんなのがありました!
 |:在  |: ̄ ̄ U ̄:|
http://www.saitama.gasuki.com/yuusei/
0474デフォルトの名無しさんNGNG
>>472
何年目?恥ずかしいよ。入るか入らないかの問題じゃなくてさ。
0475あぼーんNGNG
( ´Д`)/< 先生!!こんなのを見つけました。
http://muryou.gasuki.com/hankaku/hankaku03.html
http://muryou.gasuki.com/hankaku/hankaku04.html
http://muryou.gasuki.com/hankaku/hankaku02.html
http://muryou.gasuki.com/hankaku/hankaku01.html
http://muryou.gasuki.com/hankaku/hankaku06.html
http://muryou.gasuki.com/hankaku/hankaku05.html
http://muryou.gasuki.com/hankaku/hankaku08.html
http://muryou.gasuki.com/hankaku/hankaku07.html
http://muryou.gasuki.com/hankaku/hankaku08.html
http://muryou.gasuki.com/hankaku/hankaku09.html
0476あぼーんNGNG
   ,rn                 
  r「l l h.                / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  | 、. !j                | 
  ゝ .f         _      |  
  |  |       ,r'⌒  ⌒ヽ、.  │  http://www.saitama.gasuki.com/aomori/
  ,」  L_     f ,,r' ̄ ̄ヾ. ヽ. │   こんなのあったニダ
 ヾー‐' |     ゞ‐=H:=‐fー)r、)  | 
  |   じ、     ゙iー'・・ー' i.トソ   | 
  \    \.     l ; r==i; ,; |'  .人_ 
   \   ノリ^ー->==__,..-‐ヘ___
     \  ノ ハヽ  |_/oヽ__/     /\
      \  /    /        /  |.  
        y'    /o     O  ,l    |
0477472NGNG
>>474
いや、別にいいんだけどさ。
そんな風に煽って楽しい?
0478デフォルトの名無しさんNGNG
Win2000 Access2000での質問です。
mdbに書いたVBAで別のmdbに接続して、
接続したmdbのテーブルをサブフォームにして
表示したいと思っているのですが、どうもうまくいきません。
というのはレポートソースには
ローカルに保持しているオブジェクト名か、SQLしか
書けないみたいなのでどうすればいいか悩んでいます。
リンクテーブルはメンテの関係上使用できません。
ローカルに一時テーブルを作成してそこから表示することも、
mdbを共有する関係上できないです。
OpenDatabaseで開いたDbオブジェクトの保持するテーブルをどうやったら
レポートソース(Form_TESTFORM.ReportSource)に
設定できるでしょうか?
よろしくお願いします。
今万策尽きた状態で悩んでます。。
0479デフォルトの名無しさんNGNG
レコードソースならフォームの Recordset プロパティ使えばいける
0480478NGNG
>479
ありがとうございます、
上手くいきました。
これで明日から気持ちよく作業が進めます。
ほんとありがとうございます。
こんなプロパティあったんですねぇ。
参考になりました。
0481デフォルトの名無しさんNGNG
Access を使わずに MDB ファイルを JET 経由でアクセスするプログラムを
作ったのですが、Access をインストールしないで初期状態の MDB ファイル
だけを配布先のマシンに入れるのって、ライセンス上何か問題ありますか?
0482デフォルトの名無しさんNGNG
Access2002を使用しています。

フォームやレポートのテキストボックスに、
200303とテキスト型で格納されているデータを
平成15年03月と表示させたいのですが
上手く行きません。
何か良い方法はないでしょうか?
0483デフォルトの名無しさんNGNG
>>482
2003 と 03 を別フィールドにする
0484482NGNG
解決しました。
説明不足でした。
200303とテキスト型で格納されているデータですが、
これはテーブル上に格納されているデータです。
フォームやレポートではテーブルを基にしたクエリを使用しています。
クエリに以下の式を入れました。

和暦年月: Format(Mid([適用開始年月],1,4) & "/" & Mid([適用開始年月],5,2) & "/01","gggee\年mm\月")

該当するフォームやレポートのテキストボックスの
コントロールソースに和暦年月を使用して解決しました。
0485アクセス太郎NGNG
はじめまして
猛者の皆様にお聞きしたいのですが

Access2000で コマンドボタンを押した時に
OutlookExpressを起動させメールを送りたいのです

で エクセルファイルを添付したいのですが
添付だけが 出来ないのです。
手動で添付させれば問題は無いのですが
何か方法があれば 教えて頂きたいと思いまして
0486デフォルトの名無しさんNGNG
>>485
まず、自分の試した方法を説明しろよ。
どうやったら添付できなかったのか?
0487山崎渉NGNG
(^^)
0488デフォルトの名無しさんNGNG
”ユーザID””ユーザ名””出身””年令”のフィールドがあるテーブルで
特定のユーザIDをクエリの抽出条件のとこで指定して年令フィールドのみを持ってきたい場合
ユーザIDが合ってれば年令が取り出せますが
ユーザIDが無いものを抽出した場合、当然ですが年令フィールドには何もかえってきません
このとき、クエリはnullを返しているのですか?

んで僕はそのかえってきた値を利用して計算式に代入したいのですが、、、
0489デフォルトの名無しさんNGNG
>>488
"0件" の結果を返すことと、null を返すことは違うよ。

> んで僕はそのかえってきた値を利用して計算式に代入したいのですが、、、

意味わからん ? 何をしたいんだ ?
0490488NGNG
説明ややこしくてすみません

簡潔にまとめると
あるテーブルの列と行を特定して、そのセルに入ってる値を取ってきたいって事です

でもクエリでその操作をする時に
テーブルの中に該当する行が見つからなかったときは返ってくる値がない
値がないということは、返しているものはNULL?ってことが聞きたかったのです 
0491デフォルトの名無しさんNGNG
>>490
> 値がないということは、返しているものはNULL?ってことが聞きたかったのです

の答えは、

>> "0件" の結果を返すことと、null を返すことは違うよ。

だよ。

データベースの内容とクエリの内容によっては、null が一万件返って来る事もあるぞ。

もしかして、これも理解してないのか ?
0492488NGNG
>>491
値がないんだから返してるものも無いって事ですか
分かりました。

>データベースの内容とクエリの内容によっては、null が一万件返って来る事もあるぞ。
抽出したい部分(セルの値)がなにも設定されてなかったら(nullなら)って事ですね、それは分かります
0493デフォルトの名無しさんNGNG
0もスペース(空白文字)もNULLも全部違う。
当然NULL値を入力すべきカラムもありえる。
セルと呼んでいるところを見ると初心者と見受けられるので、入門
書を一冊読む事を薦める。
0494デフォルトの名無しさんNGNG
>>493
> 0もスペース(空白文字)もNULLも全部違う。

お前も勘違い組か ?
ここの話題はそう言うことじゃないぞ。

> 入門書を一冊読む事を薦める。

あんたにも薦めとくよ。
0495デフォルトの名無しさんNGNG
イタタタタ
0496デフォルトの名無しさんNGNG
みなさん すいません 教えて下さい 

下記の検索文字テーブルと検索対象テーブルを比較して検索文字テーブル存在する
検索対象テーブルのデータ前後に決まった文字列を可能なのでしょうか

・検索対象テーブル
 [内容]
  可能表現には人が意志を持って何かをする

・検索文字テーブル
 [内容]
 可能表現
 人が
 意志を
 持って

・検索結果格納テーブル
 [内容]
  <A>可能表現<B>には<A>人が<B><A>意志を

<B><A>持って<B>何かをする。

最終的に HTMLに変換したいので宜しくお願いいたします
0497デフォルトの名無しさんNGNG
定期的にJET厨がくるな。
0498デフォルトの名無しさんNGNG
>>496
> 下記の検索文字テーブルと検索対象テーブルを比較して検索文字テーブル存在する
> 検索対象テーブルのデータ前後に決まった文字列を可能なのでしょうか

Access の前に、日本語を勉強しろよ。
0499デフォルトの名無しさんNGNG
SELECTでデータを取得してから、
どの内容によって
そのレコードを更新したいので、
SELECTと同時にロックしたいのですが、
やり方がわかりません。
DAOでいうなら
rst.Edit
でいけるのですが、
これをSQLで行うにはどのようにすればいいのでしょうか?
お願いします。
Oracleでいう「FOR UPDATE」みたいなのが
あると思って探したのですが、
見つからなくて困っております。
0500山崎渉NGNG
   ∧_∧
  (  ^^ )< ぬるぽ(^^)
0501山崎渉NGNG
   ∧_∧
  (  ^^ )< ぬるぽ(^^)
0502デフォルトの名無しさんNGNG
すいません、質問です。

Win2KとAccess2000を使用しています。
一つのMDBをホストにおき、
クライアントがそのMDBに対し、UpdateやEditをかけたりします。

Update文などは全てSQL文で書いています。

しかし、クライント2台が同時接続をすると、すぐに飛んでしまうのですが、
これってそんなモノでしょうか?

回避とか出来ますか??
0503デフォルトの名無しさんNGNG
>>502
すべてSQLで処理しているならサーバーはMSDEに替えたほうがよいよ
0504デフォルトの名無しさんNGNG
>502
飛んでしまう、ってのはどういう現象なのか、エラーメッセージは出るのか
等をもうすこし書いたほうが吉だで。

どっちにしろ>503に同意だけど。

0505デフォルトの名無しさんNGNG
>503,504
回答有難うございます。
ソフトはBuilderで作っています。

飛んでしまう状態は、書き込み処理が正常に行われずに、飛んでしまいます。
エラーメッセージとしては「排他処理でロックされている可能性があります。」と
でます。

Accessのオプションで、共有設定にしたりしています。
MSDE、、そうですよね。

私もそうは思いますが、仕様が仕様なので。

もう少し、自分で色々調べてみます。本当に有難うございました。
0506デフォルトの名無しさんNGNG
>>505
> エラーメッセージとしては「排他処理でロックされている可能性があります。」と
> でます。

ロックされてたらちょっと待って再試行するとかしてないの ?
0507デフォルトの名無しさんNGNG
みなさん すいません 教えて下さい 

下記の検索文字テーブルと検索対象テーブルを比較して検索文字テーブル存在する
検索対象テーブルのデータ前後に決まった文字列を可能なのでしょうか

・検索対象テーブル
 [内容]
  可能表現には人が意志を持って何かをする

・検索文字テーブル
 [内容]
 可能表現
 人が
 意志を
 持って

・検索結果格納テーブル
 [内容]
  <A>可能表現<B>には<A>人が<B><A>意志を

<B><A>持って<B>何かをする。

最終的に HTMLに変換したいので宜しくお願いいたします
0508デフォルトの名無しさんNGNG
>507 マルチ氏ねよ

0509499NGNG
>502
え、、アクセスの共有ってそんなに駄目だったんですか。
私明日から仕事でそういうの作ろうとしてます。。
>499が私なんですが、
>502さんの状況が
アクセスの限界によるものなら、
本気でやばいです。>499の質問どころではなくなってきました。
もう正直仕様の変更がきかないところまできています。。
>503
ということは出来る限りSQLを使用しないようにすれば
害は無い、ということでしょうか?
アクセスが共有に弱いのはなんとなく聞いていましたが、
その原因はページ単位のロックにあるものと思っていたので、
>502さんの状況ほどとは思ってなくてお客様の要望どおり、
アクセスでの仕様を決定してしまいました。
Accessの採用、複数のクライアントからのアクセス。
この二点は同考えても今更仕様を変更できません。
>502さんのような状況に陥らないようにするには
どうすればいいでしょうか?
なんとかアドバイスお願いします。
泣きそうなのでageさせてください。。
0510デフォルトの名無しさんNGNG
>>509
そんな仕様訳もわからず受ける奴もしんじられんが。。。
どうしてもやらなきゃならんなら、元データ連結は絶対
にパスし、自前ロックをつけんとな。。。

MSDEで作った方が楽だ(w

0511デフォルトの名無しさんNGNG
>>509
> >503
> ということは出来る限りSQLを使用しないようにすれば
> 害は無い、ということでしょうか?

どうやったらこう言う解釈ができるようになるんだ...。
0512503NGNG
>>509
SQLで処理しているなら、mdb共有からMSDEへの移行がしやすいってことです。

502さんの処理が飛んでしまうのはロック時の処理が誤っているからでしょう。
コーディングに問題があるのかBuilderのバグなのかは判りません。

ページロックの問題は非連結フォームにして更新するときだけ
ロックするようにしてはどうでしょうか(楽観的ロック)

また、MSDEに移行できるようにADO+SQLでコーディングして
クエリーに自作の関数を使用しないようにしましょう
0513デフォルトの名無しさんNGNG
>>499
>>Accessの採用、複数のクライアントからのアクセス。
>>この二点は同考えても今更仕様を変更できません。
業務で使うなら、しかも客先納付なら絶対に怖くてできない組み合
わせだね。
複数同時アクセスは当然として、JETを採用する理由は?
0514499NGNG
>510
実はかなり小さい会社で
唯一のSEが退社してしまい、
仕方なく、私が、、ということになり、困っております。
元データ連結を避けることはネットで調べてかいてありましたので、
そうします。
MSDEはさっぱりわかりません。
今の仕事が済み次第、急いで覚えます。
>511
すみません、わかってはいるのですが、
そうでないと困るので、無理やり解釈してしまいました。。
>512
きちっとロック処理を行えば、まだ見込みはある、ということですね。
それを聞いて少し安心しました。
>513
私自身MSDEというものについて知識が全く無く、
選択肢が無かったためです。
反省しております。
0515499NGNG
徹夜してでもいいシステム作ってきます。
たくさんのアドバイスありがとうございます。
ほんとに感謝しています。
なんでもかんでも聞く気はありませんが、
力不足故、どうしてもわからない時は
助言していただけると助かります。
実は入社7ヶ月目でいきなりの山です。。
MSDE、。
名前だけ知っていて調べようとしなかったことを、
まがいなりにもプログラマーとして恥ずかしく思っております。。

たくさん意見していただきましたが、
一言一言に感謝しています。
ありがとうございます。
0516デフォルトの名無しさんNGNG
>>515
つーか、上司いないの ?

マジで、

> 実は入社7ヶ月目でいきなりの山です。。

と言う状況なら、組織の問題だと思うけど。
0517502NGNG
皆さん、色々ありがとうございます。

昔にAccessのDB,AccessVBAでソフト書く仕事をしたときは、
今ほど飛びませんでした。
(SQL文で書いて、大丈夫でした。
一日何万件もあるようでしたら、MSDEがいいと思いますけど。)

>503さま
>512でご指摘いただいた、ロック時の処理ですが、
どこかで、『既定のレコードロック』を『編集済みレコード』にチェックするといい。
と、書いてありましたので、そのようにしました。
まあ、変わりませんでしたが。(;´д`)トホホ

Update文を実行すると飛んでいるようなので、どうもBuilderにも問題がありそうです。
(もちろんソースも色々チェックしています。)
解決できましたら、また報告いたします。

ありがとうございました。
0518デフォルトの名無しさんNGNG
それに加えて、ツール-オプション-詳細の「レコードレベルでロックして開く」
という項目があるけど、どうなってる?
ま、Accessの行ロックは糞だとしか聞かないんでアレだが。
0519デフォルトの名無しさんNGNG
>>518
どうもこうも
すんごい勢いでmdbがでかくなるだけなのだが。
こんな行ロック信用できるか。

どうしてもやりたきゃ、ロックフラグカラム追加して
自前でロックだ。漏れはこんなことはもうしないが
酔ゐこは素直にMSDEを使おうね(w
0520デフォルトの名無しさんNGNG
>>519

> すんごい勢いでmdbがでかくなるだけなのだが。

本来、ページロックしかできない仕様なので、行ロックを
無理やり実現するため、レコードをページサイズに合せて
大きくしている、と聞いた記憶がある。(藁

信憑性のある情報なのか、都市伝説の類なのか、不明。
0521アクセス素人NGNG
accessで モジュールをつかって
コマンドボタンとコマンドボタンを線でつなげたいのですが
そのやり方キボンヌ

というか教えてください おながいします
0522デフォルトの名無しさんNGNG
いつも思うけど、雑談やアドバイスする側の人間ならともかく、質問する側
の人間がそんな言葉遣いでどうしようってんだろう。
それが人に物を頼む態度かね?
0523アクセス素人NGNG
すみません いつも違う板にいるので・・・

わかるかた 教えてください
お願いします
0524デフォルトの名無しさんNGNG
Lineメソッドあたりでコマンドボタン間に線を引いてやればヨイ。
文面通りに取るなら、だが。
0525アクセス素人NGNG
ラインを引くのは簡単なのですが
コマンドとコマンドを なんと言えばいいのか上手く説明できませんが
そこにボタンがあると認識させて 線が延びる
・・・
見たいな感じにしたいのですが

説明がへたくそですみません
0526デフォルトの名無しさんNGNG
ボタンのLeftとTopから位置計算してその都度Lineって事け?
0527デフォルトの名無しさんNGNG
>>526
あまりうまく説明できないからどうしようもないのですが
ボタンとボタンを自動的に結んでくれるのを期待しているのですが

とりあえず位置計算して引くようにしてみます
どうも迷惑かけました
0528デフォルトの名無しさんNGNG
>>527
Line.Left = Command1.Left + Command1.Width
Line.Width = Command2.Left - Line.Left

みたいなことか?
0529デフォルトの名無しさんNGNG
【チンコのレス】

〓〓〓〓〓
 |〓|
 |〓|
 |〓|
 (⌒⌒)
  \/
  〓
 【チンコお守りレス】このお守りを見たあなたは超超超幸せ者!
2週間以内に必ず彼氏・彼女が出来るよ!
すでにいる人は超〜ラブラブ みんなが幸せになりますように…
そのかわりこのコピペを1時間以内に、5つ別のスレに貼り付けてね・・
でないと、あなたはインポや性病になります。
0530デフォルトの名無しさんNGNG
Accessそのものをメーラとして使いたいのですが、
方法はないものでしょうか?
0531デフォルトの名無しさんNGNG
>>530
もう遅いから、ネタ書く暇あるなら寝ろよ。
0532デフォルトの名無しさんNGNG
>>530
つい最近、作ったよ。
別に、VBで作っても、Delphiで作ってもよかったんだが、Accessの方がメンテ
しやすいと思ったんで。
(DelphiもVBも職場のPCにIDEがインストールされていない、という事情もあり)
CDO(事実上、MAPIとおなじもの?)を援用しただけのシロモノなので、これを
以って「開発」と呼ぶに値するか甚だ疑問ではあるが。(藁

0533デフォルトの名無しさんNGNG
>>532
Exchange Server がないと使えないのでは?
0534デフォルトの名無しさんNGNG
>>530
メールをDB化したいだけなら、Outlook(Express)とつなげば簡単じゃない?
0535530NGNG
>>534
すでにやってます。

OutLookだと、バージョンによってオブジェクトを
変更しなくてはならないし、ウイルスに弱い、呼び
出しメッセージがウザイ、、OutLookそのものに依存
しなくちゃ何にもできない等々で使いたくない
ので、、、
0536デフォルトの名無しさんNGNG
>>535
Access そのものに依存するのはいいんだろうか...。
0537デフォルトの名無しさんNGNG
Accessにファイルのパスなどを保存しています。
VBで作っているEXEを使って二つのMDBファイルを同期を取りたいのですが、
パスは大文字小文字が混ざっていて困っています。Oracleでいう、
SELECT * FROM table WHERE UPPER(path) = 'hogehoge'
のような感じでとるか、あるいは別の方法で同期は取れないでしょうか。
0538デフォルトの名無しさんNGNG
>>537
age厨には答えません。
0539デフォルトの名無しさんNGNG
ネット上で自分の分身キャラ「アバター」を作って楽しくコミュニケーション
無料登録で、もれなく商品券とメールアドレスが貰える!!
http://camellia16.fc2web.com/cafest.html
0540デフォルトの名無しさんNGNG
上がってなきゃこんなスレ見ねえよ
0541デフォルトの名無しさんNGNG
>>540
たんなる煽りにいちいち反応すんなって
0542デフォルトの名無しさんNGNG
>>537
VB で mdb 2つ開いて、各々パス名でソートした結果を元にマージすればいいんじゃないの ?
LCase とか、UCase とかを知らないと言うだけのことか ?
0543デフォルトの名無しさんNGNG
>>542
一度やったのは
1. Recordset (x2) を取得
2. 全部大文字にして配列 (x2) に取得
3. 比較
4. なければ足す
だけど、遅かったので他の方法 (AccessとかADOの機能で) を模索中。
0544530NGNG
>>536
OutLook使用すると、激しく環境に依存しますが、
Access単体でメーラとして活用できれば
ランタイムもあるし、全く問題はありません。
0545デフォルトの名無しさんNGNG
>>543
> 1. Recordset (x2) を取得
> 2. 全部大文字にして配列 (x2) に取得

なんでこんなことする必要あるの ?
SQL の時点で大文字にしてソートしとけばいいだけだろ ?

> 3. 比較

まさかと思うけど、片方ひとつに対してもう一方全部を舐めたりしてないよね ?

それとも、データが100万件ぐらいあるのか ?
0546デフォルトの名無しさんNGNG
>>544
言ってる内容が理解できないのは俺だけか ?
0547デフォルトの名無しさんNGNG
>>545
うぉ! Access の SQL だと UCase (Field名) だたーのですね!しらんかった。

それはそれとして,データは(アクセスなのに)数万件なので、速い方法があ
ればいいなぁとおもいまつ。
0548530NGNG
>>546
「アクセスをメーラがわりに使いたい」
だけのことすら理解できませんか?
0549デフォルトの名無しさんNGNG
>>547
一体どれぐらいの時間で終わらせたいんだ ?
0550デフォルトの名無しさんNGNG
>>530
サブジェクトにはちゃんと「未承諾広告」入れとけよ(w
0551デフォルトの名無しさんNGNG
>>548
VBAでメールのライブラリ呼び出すんなら、使うライブラリOutlookと一緒、つま
り多くの問題も一緒、ってことわかってないよね。
0552530NGNG
ハァ・・・
ここじゃまともなレスつきそうもないなぁ。。。
0553デフォルトの名無しさんNGNG
>>552
BASP21を使って作りましょう。
http://www.hi-ho.ne.jp/babaq/basp21.html
0554530NGNG
>>553
これは使えそうですね。やっとマトモな方が(w
ここは基地外ばかりじゃなかったのですね。

ありがとうございました
0555デフォルトの名無しさんNGNG
やっと基地外がいなくなったか。
0556デフォルトの名無しさんNGNG
>537
別MDBへリンクテーブルはれば、片方で通常のSQL一発で出来る可能性が。
0557デフォルトの名無しさんNGNG
DBエンジンを統合するっていう計画はどこにいったの?
いまからJETを使う意味ってあるのかな?
0558デフォルトの名無しさんNGNG
>557
積極的に使うって事はあまり無いと思うけど・・・
予算・要件などの関係上、消去法でJetになるケースも多々あるのでわ?
0559デフォルトの名無しさんNGNG
アクセスでVBAを用いてフォーム上に矢印を引きたいのですが
線しか引けません
調べても見当たらないので
わかる方、教えてください。お願いします
0560デフォルトの名無しさんNGNG
>>559
線を組み合わせれば矢印になるだろーが
0561デフォルトの名無しさんNGNG
>>560
それはわかるのですが
違うやり方を探しているんです
なにかありませんか?
ないのかなー
0562デフォルトの名無しさんNGNG
>>561
Labelに矢印を書いてそことつなげるのはどうだろうか。
現状ではExcelみたいな矢印付き直線にはできないし。
0563デフォルトの名無しさんNGNG
ためしにLabelと線でやってみたが、悪くはないぞ
http://sakots.pekori.jp/imgboard/imgs/img20030502213554.gif
0564デフォルトの名無しさんNGNG
>>563
採用
0565デフォルトの名無しさんNGNG
>>564
ご採用ありがとうございます。つきましては使用料ですが…
0566デフォルトの名無しさんNGNG
オープンソース(?)じゃねーのか(;´Д`)
0567デフォルトの名無しさんNGNG
>>563
採用させてイだ抱きます
0568デフォルトの名無しさんNGNG
 AccessからVBAでPCの時計いじることって出来ますか?
0569デフォルトの名無しさんNGNG
>>568
( ´,_ゝ`)プッ
0570デフォルトの名無しさんNGNG
昔、SEDITと言ふ、世界一かるいテキストエディタがございました。
やつと発見と思ひきや、Mac版でありました。
果たしてPC/AT用のSEDITは何処にあるのでせう。
当方、昭和の御世からパソコンを使つてゐる者です。
0571デフォルトの名無しさんNGNG
>>568
Time ステートメントじゃダメなのか ?

>>569
できないなら黙っとけよ。
0572デフォルトの名無しさんNGNG
>>571
0573デフォルトの名無しさんNGNG
>>568
Accessは使ったことないんだけど、APIのSetSystemTime()を呼べばいいんじゃないの?
0574デフォルトの名無しさんNGNG
>>570
Vi
0575デフォルトの名無しさんNGNG
>>568,573
ありがとうございます
あまりにもくだらない質問で放置かと思いました。

「時計なんてのは普通マウスとキーボードでいじるもんだろ」と。

まったくそのとおりです。
でも、キーボードのないPCなんです。
素人の僕がAccessで七転八倒しながらどうにか作った、
パートの女の子たち用の出退勤管理DB
女の子たちはまともなPCなんてつかえません。
タッチパネルで使ってるんです。
PCの時計ってのはなぜか良く狂う。びっくりするぐらい良く狂う。
遅れたPCで出勤チェック、進んだPCで退勤チェック、なんて知恵を女の子
たちは身につけてしまいました。

今までは時刻合わせためにいちいちキーボードをつないでいましたが、
もう疲れてしまいました(いちいち電源落とさなきゃならないし)

SetSystemTime()
ヘルプには載ってませんでしたけど、ググったらぞろぞろ出てきました。
これから試してみます。
(APIってのは、そもそも何なんでしょうね。ときどきお役立ちサイトから
ひろってきて使わせてもらってますが、いまだに正体が分かりません。
少なくとも僕が書くような糞モジュールとは全然質が違うようです)
0576デフォルトの名無しさんNGNG
>>575
時刻合わせするソフト使ったら?
0577568NGNG
>>576 お気遣い感謝です

何となく出来そうなんで、あとちょっとだけ頑張らせてくださいな。

SetSystemTimeってのは、9時間足されちゃうんですね
修正するための関数つくらなきゃならないのかな
いや、そんな面倒な話はねーだろ。
なんてことを考えつつふたたびこのスレにもどってきて、
Timeステートメントという言葉をあらためて読み返してみた。
これだったらHelpに載ってました。

というわけで

Dim MyTime
MyTime = #----#
Time = MyTime

標準モジュールも要らず、たった3行で済むことが判明したのでした。
0578デフォルトの名無しさんNGNG
>>577
サーバーは桜時計で時刻を合わせて
http://www.venus.dti.ne.jp/~uno/software/

クライアントはスタートアップで net timeを実行してサーバーと時刻を合わせる
http://hp.vector.co.jp/authors/VA002739/ntcom/com_network/time.htm
0579571NGNG
>>575, >>577
俺は無視かよ...。
0580デフォルトの名無しさんNGNG
>>577
代入する時刻はどこからゲットするつもりだよ
0581bloomNGNG
http://homepage.mac.com/ayaya16/
0582デフォルトの名無しさんNGNG
accessのテーブルに追加変更をするASPアプリ(vbscript)をBRINKSTER
に置いたのですが下記のエラーが出てしまいます。
Microsoft VBScript runtime error '800a01a8' 
Object required: 'ObjConn'

DBName="Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & _
Server.Mappath("/ユーザーID/db/member.mdb")
Set ObjConn = Server.CreateObject("ADODB.Connection")
ObjConn.open DBName←この部分でエラーが発生 

ローカルでは問題なく動きました。
Brinksterに詳しい方、何か解決策はありますでしょうか?
0583568NGNG
>>571
ごめんなさいごめんなさい、番号まちがえてました
timeステートメント感謝します
夕べ、というか、明け方は、かなり意識も朦朧としてまして

いま起きたところです

>>588
フォームのテキストボックスを利用するつもりです
そこに数字上げ下げボタンつくって
0584デフォルトの名無しさんNGNG
>>583
LANやインターネットに接続していないPCなのか?
>>578みたいな方法が一般的だろ
0585568NGNG
>>584

なるほど、>>578 見逃してました
LANで7台ほどつながってますが(なんちゃってサーバー1台と子機6台)、
インターネットにはつながってません
こっちも試してみます
きょうはあんまり夜更かしできないけど

夕べはtimeとかtimerとかで遊んで時間をつぶしてしまった
timerつかうと、フォームで時計がつくれるんですね
ちょっと面白かったです
0586デフォルトの名無しさんNGNG
Access2000使用初心者でつ。
テキストの書式をyyyyとして、
規定値を="2003"としてるのですが、2002と入力すると
「このフィールドに入力した値が不正です。」とMsgBoxが出ます。
何故??
この値を元にクエリーを作成してフォームを開くのでつが、2003年だけじゃ意味なし。
ヘルプがうまく作動しません。
右クリックも効かないし。
いちいちプロパティ開くのにツールボックスクリックすんの面倒だよおーー。
0587デフォルトの名無しさんNGNG
>>586
書式yyyyは不要だろ
0588586でつNGNG
>>587タン
レスありがとう。うまくいきますた。
ところで、空データ時の処理ですが、
レポートでNoData時にはイベントプロシージャーが用意されてますが、
フォームにはないので、開く前の時点で空データかどうかを
いちいちレコードカウント調べるしか手はないのでしょうか?
ところでAccess使用中だけ、右クリック効かないのは何故なのだ・・・

0589動画直リンNGNG
http://homepage.mac.com/hitomi18/
0590デフォルトの名無しさんNGNG
>>585
'サーバーの時計と同期
RetVal = Shell("net time \\サーバーの名前 /set /yes", vbHide)
0591デフォルトの名無しさんNGNG

教えてください。
下のようなデータがあります。
「F1」 「F2」
A    D
A    E
A    F
B    F
B    G
B    H
B    J

これをF1の値が同じ場合はグループと考えて
1レコードにして
別のテーブルに下のように書き出したいのです。
F1の値が同じでF2の値が異なるものは
最大でおよそ50前後あります。

「F1」 「F2_1」 「F2_2」 「 F2_3」  「F2_4」 …
A    D    E      F  
B    F    G      H     J

F2の値をチェックして書き出すときに
書き出し先のフィールドの指定をどうすればいいのか解らなくてはまっております。
0592デフォルトの名無しさんNGNG
何の為のRDBなのかって感じの質問だな
0593571NGNG
>>591
>>592 が言う通り、そんなタコな設計はヤメレ。
諸事情でできないなら、F1 でソートしといて、あとはプログラムで頑張れ。
0594デフォルトの名無しさんNGNG
ODBCについて質問なんですが、
ACCESS VBAから、ODBCデータソースアドミニストレータの画面
(ユーザーDSNとかシステムDSNとかのタブがある画面)を呼び出すことって
できますか?
さらに、そこで選んだDSN名をPGで取得することってできますか?

厨な質問で申しわけないんだけど、判る方、よろしくお願いします。
0595デフォルトの名無しさんNGNG
>592-593
いや…書き出し結果はDBとして使うわけじゃないんですが…
結局何もアドバイスはないんですね。
0596デフォルトの名無しさんNGNG
>>594
DAO.DBEngine.OpenDatabase( "")
は駄目か?
0597594NGNG
>596

おお! でてきました。ありがとう!
愛してる!
0598デフォルトの名無しさんNGNG
>595
テーブルデータの条件がわからないのでなんともいえませんが・・・
クロス集計で変えられませんか?

F2の値が確定しているものだったら集計クエリでもできるかも。
そうじゃないならDAOとか使うしかないかな。

書き出し結果はExcelに出しますか?
Excelに出力するなら邪道だけど、そのまま出力してから、
行列の入れ替えを使ってコピーしなおしたらいかが?
ExcellVBA使えば自動でできるし。
0599デフォルトの名無しさんNGNG
どうでもいいかもしれないが、
今までクエリで作ってた表示画面を
ビューに置き換えたら
かなり速くなったぞ。(Accessでクラサバの場合)
速度で悩んでる人は参考にしてください。
0600デフォルトの名無しさんNGNG
データベースを共有する場合はMSDE+ADPが基本ですね。
速いし、DBも壊れない。

ここを読めば違いが良く分かるよ
http://www.int21.co.jp/pcdn/vb/noriolib/vbmag/0004/msde/
0601デフォルトの名無しさんNGNG
>>600
ネタに決まってるだろ。だって

Accessでクラサバの場合

だよ。
0602571NGNG
>>595
> 結局何もアドバイスはないんですね。

>>593 の、「諸事情でできないなら、F1 でソートしといて、あとはプログラムで頑張れ。」は無視というわけだな。
タコなテーブル設計する奴はさすがだよ。
0603デフォルトの名無しさんNGNG
>>602
同意。聞いておいて、そりゃないわなってな態度だな。
きっと彼は何も解決できないよ。
0604デフォルトの名無しさんNGNG
それは置いといて、
レポートのセクションて何オブジェクトか知ってる人いませんか?
Witheventsでイベント受け取りたいんだけど、
Sectionだとフォームのセクションになっちゃう。
0605600NGNG
>>601
勘違いしているようだから勉強してねって意味だったんだけど
やっぱネタかな?
0606デフォルトの名無しさんNGNG
時計のことでお世話になった568です

>>591みたいなデータの並べ替え(並べ替えなのかな?)
何となく身に覚えあり、です

たとえば、F1が住所、F2が名前とかで
たとえば葉書の宛名書きで
住所が同じの人は、1枚にまとめて XX様 & YY様 & ZZ様
みたいにしたいとき。

いや、>>591がそういうことをしたいのかどうかは知らないけど。
僕はたまたまそうだったってこと。

はじめはExcelに吐き出してやってたんだけど(Excelなら簡単だよね)、
何が何でもAccessで完結させたくなって。
でも、クエリだけじゃどうにもならなくて。
生まれて初めてレコードセットってのを使った。
けっこう面白かったよん。
0607デフォルトの名無しさんNGNG
>>606
> たとえば葉書の宛名書きで
レポートでやれや。
0608571NGNG
>>606
まあ、定期的にこう言う話題が出てくるね。
データベースってあくまでも必要なデータを取り出したりするもので、データの並びを表現するもんじゃないからな。
多分こう言う奴の頭の中では、データベースがレコードとフィールドが Excel のセルみたいにイメージされてんだろうね。
レイアウトのために、3レコード空白レコード入れたいとか言い放った奴もいるし。

でも、MS のことだから >>591 みたいなことができる集約関数とか作りそうで怖い...。
0609デフォルトの名無しさんNGNG
結構みんな大人だな
0610デフォルトの名無しさんNGNG
>>606
時計の件はどうなったの
人に聞くだけじゃなくて、どのように解決したかも書き込もうよ
0611デフォルトの名無しさんNGNG
別にいいじゃん
0612デフォルトの名無しさんNGNG
>608
だからDBとして使うデータじゃないっていってるのに
能書き言うのはよく理解してからにしたらどうですか?
そんな素人でもできる批判をわざわざするなんて
自分の能力さらしてるようなもんですよ。
それに結局なにも答えらしい事はいってないじゃない。
あなたのレスみると、この件以外でもね。
反応するのはやめておこうと思ったけど、
あんまり得意そうなレスについつい釣られました。

ちなみに知りたかったのは配列のインデックス値でした。

>>598さん
遅くなりましたが、考えてくださってありがとうございました。
0613598NGNG
>612
マァマァ...もうちょっと判りやすく書いた方が良かったかもですね。

私も情報が少ないので598のような回答しかできなかったです。

配列のインデックス値が知りたいとかって、書かれてないんで
お役に立てなかったようで残念です。(´・ω・`)
0614598NGNG
・・・何度もスマソ
実際 >608 のようなヤシは沢山いますね。
別に591さんの批判というより、一般論を言いたいんだと思いますよ。
0615デフォルトの名無しさんNGNG
ACEESSの常識はDBMSの非常識だというのは周知の事実。

>>608をよんで違和感を感じる人はACCESS使いを自認していいと思う。
0616571NGNG
>>612
何怒ってんのか、煽ってんのか知らんけど。

> だからDBとして使うデータじゃないっていってるのに
> 能書き言うのはよく理解してからにしたらどうですか?

ハァ ? としか言い様が無いんだけど。
一応 Access (≒ ここでは Jet) は、DB なんだよ。
テーブル設計がおかしいと言うことも理解できてないんだろうな。

> そんな素人でもできる批判をわざわざするなんて
> 自分の能力さらしてるようなもんですよ。

まあ、これはあたり。

> それに結局なにも答えらしい事はいってないじゃない。

おいおい、結局 >>593 は無視ということだな。
まあ、批判は >>602 に書いたから再掲しないけど、普通に考えたら最低の態度だと思うよ。
ちょっとでも考えた俺がヴァカだったってことだな。

> ちなみに知りたかったのは配列のインデックス値でした。

何これ ? 何の配列 ?
あの質問でこれに答えられる奴いるのか ?
正直今時点 (>>613 読んだ後でさえ) 何を聞きたいのかさっぱりわからんよ。

>>615
まあ、MS の功罪だな。
Access のテーブル画面なんか Excel みたいな感じだからな。
勘違い野郎が増えるのはしょうがない。
ただ、>>612 みたく逆切れする奴はどうしようもないな。
0617デフォルトの名無しさんNGNG
つーか、すべては使っている人間が悪い。人のせいにしてはならない。
0618デフォルトの名無しさんNGNG
同僚がADOの事を
アド
って読むんですが
とてもイヤです。

この想い、届け君の心に。
0619デフォルトの名無しさんNGNG
質問。
どうやってADOを使ってAccessのフォームからデータベースに
データを書き込むの?
0620あNGNG
>619
もうちょっと具体的に。
データベースってなんの?
0621素人の野暮ったいやり方ですけどNGNG
テーブル1 : >>591の上の段
テーブル2 : >>591の下の段で、F1を除く右側がNullの状態
Tb2のレコード一つ一つにつきTb1総なめなので、数が多いと時間がかかるかも

Dim MyDB As New ADODB.Connection
Set MyDB = CurrentProject.Connection
Dim Tb1 As New ADODB.Recordset, Tb2 As New ADODB.Recordset
Set Tb1 = New ADODB.Recordset
Set Tb2 = New ADODB.Recordset
Tb1.Open "テーブル1", CurrentProject.Connection
Tb2.Open "テーブル2", MyDB, adOpenKeyset, adLockOptimistic
Dim Atai As Variant
Dim CntF As Integer
Tb2.MoveFirst
Do Until Tb2.EOF
Atai = Tb2!F1
Tb1.MoveFirst
CntF = 0
Do Until Tb1.EOF
If Tb1!F1 = Atai Then
CntF = CntF + 1
Tb2("F2_" & CntF) = Tb1!F2
End If
Tb1.MoveNext
Loop
Tb2.MoveNext
Loop
MsgBox "Fin"
0622おもしろそうなパズルだねNGNG
ソーステーブルの名前はTTest1 フィールド名はそのままF1, F2
出力テーブル名はTOut1

Dim dbs As DAO.Database
Dim rst1 As DAO.Recordset
Dim rst2 As DAO.Recordset
ReDim ExtFieldName(1) As String
Dim FieldNameNumber As Integer
Dim i As Integer
Dim SQLStr1 As String
Dim SQLStr2 As String

Set dbs = CurrentDb
FieldNameNumber = 0
dbs.Execute "create table TTemp1 (F1 char);"
SQLStr1 = "select F1, count(F2) As F2Number from TTest1 group by F1;"
Set rst1 = dbs.OpenRecordset(SQLStr1)
While rst1.EOF = False
dbs.Execute "insert into TTemp1 (F1) values ('" & rst1!F1 & "');"
If FieldNameNumber < rst1!F2number Then
FieldNameNumber = rst1!F2number
End If
rst1.MoveNext
Wend
rst1.Close
0623622に続くNGNG
ReDim ExtFieldName(FieldNameNumber)
For i = 1 To FieldNameNumber
ExtFieldName(i) = "F2_" & i
Next i

SQLStr2 = "(F1 char"
For i = 1 To FieldNameNumber
SQLStr2 = SQLStr2 & ", " & ExtFieldName(i) & " char"
Next i
SQLStr2 = SQLStr2 & ");"
SQLStr1 = "create table TOut1 " & SQLStr2
dbs.Execute SQLStr1
0624623に続くNGNG
Set rst1 = dbs.OpenRecordset("select F1 from TTemp1;")
While rst1.EOF = False
SQLStr1 = "insert into TOut1 (F1"
For i = 1 To FieldNameNumber
SQLStr1 = SQLStr1 & "," & ExtFieldName(i)
Next i
SQLStr1 = SQLStr1 & ")"
Set rst2 = dbs.OpenRecordset("select F2 from TTest1 where F1 = '" & rst1!F1 & "';")
i = 0
SQLStr2 = " values ('" & rst1!F1 & "'"
While rst2.EOF = False
SQLStr2 = SQLStr2 & ",'" & rst2!F2 & "'"
rst2.MoveNext
i = i + 1
Wend
While i < FieldNameNumber
SQLStr2 = SQLStr2 & ",''"
i = i + 1
Wend
SQLStr2 = SQLStr2 & ");"
rst2.Close
SQLStr1 = SQLStr1 & SQLStr2
dbs.Execute SQLStr1
rst1.MoveNext
Wend
rst1.Close

dbs.Execute "drop table TTemp1;"
Set rst1 = Nothing
Set rst2 = Nothing
dbs.Close
0625デフォルトの名無しさんNGNG
すみません。激しく言葉足らずでしたね。
フロントエンドをアクセスで作り、バックエンドはSQL SERVERの
C/S型のDBを構築しようと思っています。
別のアプリケーションが生成するデータとWindowsメッセージを
受領し、そのデータをアクセスフォームに表示すると同時にSQL 
SERVERへ内部的にデータを書き込みさせたいんです。
その後、表示させたデータを編集したい場合もある事から、フォーム上から
書き込みも可能にしたいんですが。。。
0626デフォルトの名無しさんNGNG
>>625
まずは、本を買って読む
http://www.amazon.co.jp/exec/obidos/ASIN/4774109657/ref=pd_sim_dp_2/249-8842329-6677114
0627デフォルトの名無しさんNGNG
>241
> それとも暴言を吐いた人が田舎者なのですか?
ひどい暴言ですね
0628デフォルトの名無しさんNGNG
質問です。
今、パススルークエリつかって、AccessからOracleのPL/SQLのファンクションを
実行してるんですけど、うまく戻り値が取れません。
お客さんところでは、oo4oが使えないらしいので、DAOを使って書いてみたんですけど、ネ
ット検索しても情報が少なくて、やっと実行までこぎつけたところです。
コードは↓のような感じです。
ファンクションHOGEHOGEの戻り値は
FLG(Number型):0=正常終了、-1=異常終了
STR(VARCHAR型):OUTオンリーのパラメータ
          異常終了時のORACLEエラーメッセージ
です。

Set DBS = DAO.DBEngine.OpenDatabase("", False, False, "ODBC;")
Set QD = CurrentDb().QueryDefs("QDA")
QD.Connect = DBS.Connect
QD.SQL = "DECLARE STR VARCHAR2(500); FLG NUMBER; BEGIN FLG := HOGEHOGE(STR); END;"
QD.ReturnsRecords = False
QD.Execute
QD.Close

書き方が悪い!とか言うお叱りの言葉などもいただけたら幸いです。
0629628NGNG
長い上に読みにくかった…;;
吊ってきます…。
0630デフォルトの名無しさんNGNG
自分もファンクションはパススルークエリだと
うまくいかなかった。
ADOのが楽にできるよ。
0631デフォルトの名無しさんNGNG
Accessである項目がNULLでないかのSQL作るんですが

1."XXXX IS NOT NULL"
2."XXXX <> NULL"

どっちが適切ですか?
0632bloomNGNG
http://homepage.mac.com/ayaya16/
0633山崎渉NGNG
     ∧_∧
ピュ.ー (  ^^ ) <これからも僕を応援して下さいね(^^)。
  =〔~∪ ̄ ̄〕
  = ◎――◎                      山崎渉
0634デフォルトの名無しさんNGNG
>>631
好きにしろ
0635デフォルトの名無しさんNGNG
>>631
俺は1.が好み。
0636571NGNG
>>631
1. の方。

まあ、Access は >>634-635 みたいなアフォでも使えるように、2. でも動くようにしてたと思う。
0637デフォルトの名無しさんNGNG
式が NULL かどうかを判断するには、= や != などの比較演算子ではなく、
IS NULL を使用してください。
比較演算子は、いずれかの引数、または両方の引数が NULL の場合、
UNKNOWN を返します。

Access(Jet)で、たまたま動作したとしても、SQLの常識から外れたことなので
比較演算子は使わないようにしましょう。
0638_NGNG
http://homepage.mac.com/hiroyuki43/hankaku01.html
0639628NGNG
>630
遅レスでごめん。ありがとね。
ただ、ADO使うなって指示が来てるんで困ってるッス。
取り合えず実行はできるんだけどねぇ。
エラーが返ってこないのはイタイ。
0640デフォルトの名無しさんNGNG
リンクテーブルの更新ロジックをVBAで記述することになりました。
ODBC経由でOracleのテーブルにリンクを張るのですが、
MDBを再起動させた後に、テーブルを開くとパスワードを入力する画面が
出てきてしまいます。

リンクを更新するときには、
DAO.DBEngine.OpenDatabase( "")
と記述して、ユーザに使用するDNSソースを選んでもらい、パスワードも
そこで取得しています。

このパスワードを保存して、次にMDBを立ち上げたときにも入力画面が
でてこないようにしたいのですが、何かいい方法ありますか?
0641デフォルトの名無しさんNGNG
Dim cn as ADODB.Connection

Set cn = New ADODB.Connection
cn.Connectionstring = "山崎渉"
cn.Open

君にACCESS
0642デフォルトの名無しさんNGNG
バックエンドがmdbファイルでフロントエンドがmdeファイルなんだけど、
レコードのロックってupdateの一瞬しか利かないんですか?
それじゃロックの意味があまり無いんじゃ・・・と思うんですけど。
0643デフォルトの名無しさんNGNG
>>642
どんなコーディングしてるのだろう。
0644デフォルトの名無しさんNGNG
AccessでHTMLファイルを読み込んでブラウザと同様に
表示したいのですが、方法をご存じの方はありませんか?
0645デフォルトの名無しさんNGNG
>>644
ActiveXにInternet Explorerがあるからそれをフォームに乗せる。
あとは、Navigateメソッドにファイル名を指定すればよし。
0646640NGNG
ありが�d。
毎回メインフレーム読み込む時に、このロジック書いて
(接続文字列はDBに保存しておいて)リンク張りなおすようにしますた。
ちと重いけど、まあ許してもらおう。
0647640NGNG
メインフレーム = メインフォーム
アフォですな…
0648デフォルトの名無しさんNGNG
Access2000でシステムを構築していまして、
そこからレコードをエクセル2000にエクスポートしたいのですが、
Docmd.TransferSpreadSheetを使っているのですが、
他のユーザーにロックされているから閉じれない、という意味のエラーがでて
エクスポートできません。
試しにAccess上のメニューバーから普通にエクスポートしてみたのですが、
16383行以降が出力されません。
どうしたらいいでしょうか?
お客さんの扱うデータは六万件前後なので、お手上げ状態です。
どうも情報が少ないみたいで自力で回避することはできない状態です。
どうかよろしくお願いします。
0649デフォルトの名無しさんNGNG
>>648
新しくデータベースを作ってみて、そこに元データベースから全てのオブジェクトを吸い上げてみよう。
その上でエクスポートを試行せよ。
0650デフォルトの名無しさんNGNG
>他のユーザーにロックされているから閉じれない、という意味のエラーがでて
いいからさっさとエラーダイアログの内容をメモ帳に書き写して
ここに書き込め。話はそれからだ。
0651デフォルトの名無しさんNGNG
エクセルの行数上限超えてるとか。
0652デフォルトの名無しさんNGNG
ていうかAccessで6万件なんて狂気の沙汰としか思えない
悪い事言わないからSQL鯖なりボラクルなりに乗り換えれ。
まとめてあぼーんの恐怖が付きまとう。
0653デフォルトの名無しさんNGNG
>652
6万件程度なら別に珍しくもなんともないと思うけど。
気にするべきはデータ容量であって、件数ではないのでわ。
きちんとしたDBMSを使ったほうが色んな意味でイイってのは同意だけど、
Accessで対応可能ならAccessでいいじゃん。
0654648NGNG
すばやい対応感謝します。

>649
なるほど。
そうすればエクスポートできるかもしれないですね。
でも、お客さんに納品すると、自分の手から離れるので、
また今回と同じ状況になることもありえるのでちょっと今回は
見送りますね。すみません。

>650
すみません、実は覚えてない&すぐ再現できる環境ではないのです。
とりあえず二人が同じエクセルファイルを開いて、後からそのファイルを変更すると、
保存できない、変更を破棄するにはOKぼたんを〜
のようなメッセージが出ると思いますが、あれと内容が凄く似ていたと思います。

>651
そうかもしれないのですが、エクセルへの「エクスポート時」の
行の限界に触れている解説を見つけれなかったのでよくわかりません。
そうなのでしょうか?

>652-653
仕様なので今更変更効かないので今回は見逃してください。。

結局のところ何件までの同時エクスポートが保証されているのでしょうか。
同じようなパターンに出会った方おられませんか?
0655デフォルトの名無しさんNGNG
俺は DAO か ADO の Jet プロバイダ で
こんな感じの SQL 実行するほうが好き

SELECT
  *
INTO
  [Excel 8.0;Database=C:\hoge.xls].[Sheet1]
FROM
  テーブル1
0656デフォルトの名無しさんNGNG
>>648
普通にメニューバーから16383行以上エクスポートされるが……
0657648NGNG
>656
あれ、ほんとですか。
会社のの環境では駄目みたいです。
ちなみにAccess2000 Win2K Serverです。
どうもよくわからない制限ですね。。
ちなみに出力しようとしたテーブルには
フィールドが100以上ありました。
これも問題かもしれません。
かといってフィールドを減らすわけにもいかないのです。。
0658デフォルトの名無しさんNGNG
アクセスのメニューバーに、コンボボックスを入れ込みたいのですが
標準やり方のわかる方はおられますか?
WEBのメニューもあるので方法はあると思うのですが???
0659デフォルトの名無しさんNGNG
commandbars("hoge").Controls.Add msoControlComboBox
0660デフォルトの名無しさんNGNG
>>659
レスありがとうございす。
コードで追加するのですね。。目から鱗ですw
で、HELPや他のwebを眺めて、下記のようなサンプルなどを
取得しやってみたのですが、

Dim myCB As CommandBar
↑
ここの宣言で「ユーザ定義型は使用できません」となります。
On Error Resume Next
CommandBars("Sample").Delete
Set myCB = CommandBars.Add(Name:="Sample", _
Position:=msoBarFloating, MenuBar:=False, Temporary:=True)
With myCB
.Controls.Add Type:=msoControlButton, ID:=21, before:=1
.Controls.Add Type:=msoControlEdit, before:=2
.Controls.Add Type:=msoControlDropdown, before:=3
.Controls.Add Type:=msoControlComboBox, before:=4
.Controls.Add(Type:=msoControlPopup, before:=5).Caption = "Popup"
.Visible = True
End With

参照設定のMS-ACCESS8 objectLibrayの指定はしてあるのですが、
原因はどこにあるかおわかりでしょうか?
0661デフォルトの名無しさんNGNG
あの〜 ちょっと 質問いいでしょうか?
俺 Accessって使ったことないので よくわからないのですが
DBにADOでアクセスして 190万件のDBを 固定長TXTに落としたいのですが
これって アクセスでできるでしょうか?
0662デフォルトの名無しさんNGNG
>>660
Excelなら動作するコードですね。
0663660NGNG
ボケてました。。
MS-OFFICE 8 Librayと間違えました。
0664660NGNG
>>662
ちなみにAccess97ですが、動作しました。
ただ、Office8ObjectLibraryは、Accessのみの
インストールでは出てきませんね。

。。。配布時にはどうしたものか
0665660NGNG
出てこないだけで、インストールはされてますね。。
でも、いろいろテストが必要だ。。。
0666662NGNG
私も参照設定を忘れていました。
Access 2000でも動作したよ。

.Visible = Trueの前の行に
.Position = msoBarTop
を追加するといいかも
0667デフォルトの名無しさんNGNG
>661
可能。
っつーか、その用途ならいちいちAccess使うメリットなんぞ無いと思うが?
VBでもDelphiでもいいから、使った事ある奴でやったほうが確実。
0668662NGNG
ボケてた。
Position:=msoBarFloatingの記述があったのね
0669デフォルトの名無しさんNGNG
Access2002のAutoKeysマクロでAlt+F4(Access終了)
のショートカットキーを無効にしたいんだけど
Altキーを押しながらF4キーを押すSendKeysステートメントが
わかりません。

ttp://www.accessclub.jp/samplefile/help/help_187_2.htm

の例にならって%({F4})とするとエラーが起きるし、
AccessのHelpにはAltキーのSendKeysステートメントが載ってない…
だれか助けて
0670デフォルトの名無しさんNGNG
>>669
SendKeys "%F4"
0671困ったさんNGNG
皆様こんばんは。Access2000で、難題を抱えて悩んでいます。

【難題】
�@ フォームに、テキストボックスと、ボタンを配置する。
�A テキストボックスに、ファイルへのパス(「c:\db\sample.xls」等)
を入力して、ボタンをおすと、ExcelやWordやAcrobat等のアプリケーションが立ち上がって、パスにあるファイルが開く。

こういうことはAccess2000で可能でしょうか?
方法があるなら是非教えてください。参考になるようなサイトがあれば御紹介いただければ嬉しいです。
どうか、よろしくお願いします!m(_)m
0672デフォルトの名無しさんNGNG
>>671
何が難題なのかさっぱりわからん。
コモンダイアログでファイル指定し、関連付けされてるなら
SHELL関数で起動するだろ?
0673困ったさんNGNG
>>672
集合スレッドに質問を書き込んでしまったにもかかわらず、ご回答ありがとうございます!

>コモンダイアログでファイル指定し、関連付けされてるなら
>SHELL関数で起動するだろ?

その具体的な方法を教えていただければありがたいのですが。
0674672NGNG
>>673
こんなくだらんことググれ
0675あNGNG
>673
Shell (PATH_TXT.Value)

終了
0676困ったさんNGNG
>>675
回答ありがとうございます。

その前に、コモンダイアログが何処にあるかわからないのです。
すみません。
0677デフォルトの名無しさんNGNG
>>675
それだとダメじゃないか?
WScript.ShellのRunを使うべき

>>676
ぐぐったか?
http://www.google.co.jp/search?hl=ja&ie=UTF-8&oe=UTF-8&q=%E3%82%B3%E3%83%A2%E3%83%B3%E3%83%80%E3%82%A4%E3%82%A2%E3%83%AD%E3%82%B0+VBA+Access&btnG=Google+%E6%A4%9C%E7%B4%A2&lr=
0678困ったさんNGNG
>>677
ありがとうございます。m(_)m
リック先で調べさせていただいたところ、ツールボックスのコントロールの選択の中に、「MicrosoftCommonDialog」があるそうなのですが、見当たりません。
私のはAccess2000なのですが・・・
0679デフォルトの名無しさんNGNG
>>678=671
ちぃっとばかし自分で調べる努力したほうがいいんじゃないですか?
それとマルチポストはいただけませんな
0680デフォルトの名無しさんNGNG
あなたが探してるのってこれだよね?二日間無料だしね♪

http://alink3.uic.to/user/angeler.html


http://endou.kir.jp/betu/linkvp/linkvp.html
0681デフォルトの名無しさんNGNG
楽してコーディングしようって考え方が気に入らない。
つーか、多分身になっていないよ。その場しのぎで
良い程度のDBなんだろうけどさ。プッ(w
0682デフォルトの名無しさんNGNG
初心者です。どなたか教えて下さい。
テーブルにオートナンバー型のフィールド(名称「ID」)を追加したのですが、
(フィールドサイズ=Long
新規レコード=インクリメント
インデックス=はい(重複なし)
主キーではありません。)
レコードを削除して、次回レコードを追加すると
削除したはずのレコードの「ID」+1の値になってしまいます。
1から10までを消して次に追加すると11という具合に。
これを1から表示させるには、どうしたらいいのでしょうか?

ちなみにレプリケーションIDにするとヘンテコな値がでてくる・・・

お分かりになる方、よろしくお願いいたします。
0683デフォルトの名無しさんNGNG
>>682
http://www2.moug.net/cgi-bin/mdboard.cgi?acm_v+ML2003020658
0684682でつNGNG
>>683タン
どうもありがとう。
でも、最適化しても結果は変わりませんでした。。。
それに、レコードを削除&追加する度に、最適化プログラムを
走らせるのも、重くないですか?
ユーザーが使いやすいように(PCど素人。いちいち数値を入力するの
面倒くさい。そして+1で自動的に出るってことで)
オートナンバーにしたのに・・・くすん。
別にテキストBOXを作って、レコード総数+1の値をプログラムで書いて
適用させた方が利口ですかね?
0685デフォルトの名無しさんNGNG
>>682
その連番にどういう意味を持たせたいの?
0686デフォルトの名無しさんNGNG
>>684
オートナンバーは使わないほうがよいです。
自分の好きなようにナンバリングするコードを書いたほうが融通が利くでしょ。
0687デフォルトの名無しさんNGNG
>684
レコード削除があると綺麗な連番にならないのはオートナンバーの仕様。
きちんと調べずにあー便利だわと使った結果色々めんどくさい事になる例多し。
まあ、Access使う人間にとっては通過儀礼みたいなもんだから、きにすんなw
0688デフォルトの名無しさんNGNG
一週間ほど前からACCESSを勉強しはじめた初心者なのですが、
よろしければ疑問に答えていただけないでしょうか?

顧客と契約という二つのテーブルがあって
二つは顧客IDというフィールドで顧客→契約という感じで
左結合されているのですが、
ここから顧客IDで抽出しようと思ってSQL文を書くと
何故か全レコードが抽出されてしまいます。

SELECT * FROM 顧客, 契約 WHERE 顧客.顧客ID LIKE " + "'" & "*" & txt_id.Text & "*" & "'"

SQL文はこんな感じで書いたのですが、これでは
他の顧客IDも含めて何故か全てのレコードが出てしまいます。

契約.顧客IDで検索すれば契約テーブルにあるレコードだけ抽出されるのですが、
何故顧客.顧客IDで抽出すると、関係ない顧客IDのレコードまで抽出されてしまう
のかがわからないのです。

最終的にはフォームから顧客テーブルの顧客ID、氏名、電話番号の
どれを入力しても抽出できるようにして別フォームへ表示させようと
思うのですが、氏名や電話番号でやっても全レコードが表示されてしまいます。

仕方が無いので、一度JOINを使って一つのテーブルを作ったあと
FindFirstで検索すればできたのですが
SQLを使って一つの文でできる方法があると思うのです。

どうしてもわからないので、どなたかお答えして頂ければと思います。
0689デフォルトの名無しさんNGNG
>SELECT * FROM 顧客, 契約 WHERE 顧客.顧客ID LIKE " + "'" & "*" & txt_id.Text & "*" & "'"
まずこのSQL文が疑問。
SQL文でテーブルを結合しないと、意味がないのでは?
的を射てるかどうかわかりませんが、抽出したい顧客の契約データリストを見たいだけなら、

SELECT 契約.*, 顧客.*
FROM 契約 LEFT JOIN 契約 ON 契約.顧客ID = 顧客.顧客ID
WHERE (略)

でいいのではないかと。
0690デフォルトの名無しさんNGNG
質問です。
MSDEがよく分からないので、とりあえずMDBファイルに対して
ADPファイルから接続しているのですが、プロシージャを抜けると
接続情報はクリアされてしまうのですか?
0691デフォルトの名無しさんNGNG
>>690
なぜMSDEまで使ってMDBに接続するのか理解できんが、
接続情報は一度繋げると保存されるはず。
でないと運用上問題ありすぎ。
0692デフォルトの名無しさんNGNG
>>691
ADPをフロントエンド、MDBがバックエンドって事です。
0693デフォルトの名無しさんNGNG
>>692
平たく言ってADPをプログラム部、MDBをデータ部ということなら、
素直にMDB同士でリンクする方が分かりやすいと思うけど。
MSDE使うならデータをSQLデータベースとかにする以外、意味ないんじゃないの?
0694デフォルトの名無しさんNGNG
>>689
ありがとうございます、上手く抽出させることができました。

本で読むと複数のテーブルがある場合はSELECT句に元のテーブルがわかるように
するのと、FROM句にテーブル名を書く
としか書いてなかったので、JOINでくっつけた後にWHERE句が続けられる
という事がわかりませんでした。
JOINやUNIONといった文の説明もなかったですし、VBAの本だけでは
全然ダメだと痛感しました。
SQLの本明日にでもさっそく買って勉強しようと思います。
どうもありがとうございました。
0695デフォルトの名無しさんNGNG
>>692
むしろ、ADP+MDBのやり方が知りたい。
0696デフォルトの名無しさんNGNG
ヽ
0697デフォルトの名無しさんNGNG
ヽ(
0698デフォルトの名無しさんNGNG
ヽ(・
0699デフォルトの名無しさんNGNG
ヽ(・∀
0700682でつNGNG
>>685
>>686
>>687
レスありがとうございます。
連番の意味・・・ユーザーに聞かないと分かりませんが、
どのくらい入力したかを(件数)知りたいんだと思います。
(レコード数は表示させているけど、下にあるから見づらいとかって
 ほざいてた。)
オートナンバーやめますね。
どうもでした。
0701無料動画直リンNGNG
http://homepage.mac.com/norika27/
0702デフォルトの名無しさんNGNG
あーーー久々にヘマやっちまった・・・・・
mdbがぁぁ・・・・
1日分がパーだ・・・・
0703デフォルトの名無しさんNGNG
ここは低脳厨房専用スレだな
0704デフォルトの名無しさんNGNG
>700 もう見てないかな・・・。オートナンバーを1から振りなおすには、DAOで一旦オートナンバーフィールドに-1を入れそのデータを削除し、次に0をいれて削除すると実現できます。
T_tablenameの1列目にオートナンバーフィールドがあったとします。
-------------------------------------------------------------
Dim Db As DAO.Database, Rs As DAO.Recordset, i As Integer
Set Db = CurrentDb()
Db.Execute "DELETE * FROM T_tablename;"
Set Rs = Db.OpenRecordset("T_tablename", dbOpenDynaset)
With Rs
.AddNew
Rs(0) = -1
.Update
.MovePrevious
.Delete
.AddNew
Rs(0) = 0
.Update
.MovePrevious
.Delete
For i = 1 To 5
.AddNew
Rs(1) = i
.Update
Next i
End With
Set Rs = Nothing
Set Db = Nothing
-------------------------------------------------------------
一応参考まで。
0705682=700でつNGNG
わあ!
>>704タン。
すごい具体的に説明&コーディングまで・・・
うれしい!
勉強になりました!!
愛してるー!
0706デフォルトの名無しさんNGNG
Access2000のサブフォームに選択クエリ(cn.execute)を使って抽出した
データシートを、Excelにエクスポートしたいんですが、どうすれば
良いのでしょう?
ADOXで選択クエリを作成し、Transferspreadsheet〜で出来るかな?と
思って試してみたのですが、「クエリが無い。」とか言われるし。。。
どなたが御存知ないですか?
0707デフォルトの名無しさんNGNG
Function fMakeDummyTxt(strTxt As String, strFullPath As String)
Dim fso As Object
Dim ojText As Object

On Error GoTo err1:

Set fso = CreateObject("Scripting.FileSystemObject")
Set ojText = fso.CreateTextFile(strFullPath, True)
ojText.Write (strTxt)
ojText.Close

Exit Function

err1:
MsgBox err.number & ":" & err.Description

End Function

Access97にて作成し、何の変哲もないコードで、問題なく
動作していたのですが、、、
2000に変換し実行し書き込みしてみたところ、ファイルサイズ
が20Kを越えるファイルをあたりから
「5:プロシージャの呼び出しまたは引数が不正です」となり
書き込めません。。。原因のおわかりになる方はおられますか?
0708デフォルトの名無しさんNGNG
>>707
原因は正直言ってわからないけど、引数のサイズを際限なく取れると考えるのは
乱暴だなとは思う。

97では(ほぼ)無制限だったとしても、将来的には制限される可能性はあるし、
あるいは2000で制限された結果が、今回のエラーなのかもしれないし。

個人的には、このような用途が限定された処理を関数にする意味はあまり無いと
思っているので、書き出す値を取得する処理も込みで、それ用のルーチンを
作った方がいいと思う。

質問の答えになってなくて申し訳ないけど。
0709704NGNG
>706
エクスポートしたいクエリが物理的に存在すれば
普通にできると思うけど???
何がどうできないのか状況が良くわからん。。。

>705 ヨカッタノゥ!
0710デフォルトの名無しさん NGNG
質問させてください。NTでaccess97を使っている者です。

mdbファイルをコピーして、同じディレクトリに貼りつけると、例えば「db1.mdb」なら
「コピー 〜 db1.mdb」と言う名前になりますよね。そのコピーファイルが開けなくなって
困っているんです。
開こうとすると、「Microsoft accessを実行するためのコマンドライン引数が不正です」の
メッセージが出てしまい、実行できません。
どうも「コピー」と「〜」、「〜」と「db1.mdb」の間に半角スペースがあるおかげで
ファイル名が「コピー.mdb」と認識されてしまい、ファイル名が一致しない為に開けなくなって
いるようで、半角スペースを削除すると普通に開けます。
今まで長い事使っていてこんなエラーが出た事はなかったんですが、最近急にでる
ようになりました。何かの設定が変わってしまったんでしょうか?
0711デフォルトの名無しさんNGNG
>>709
フォーム上のテキストボックスに、複数のフィールドに対しての抽出条件文(SQL文)を入力し、
それを選択クエリ(cn.Execute)で実行する。というプログラムを組んでいます。
物理的に存在させられるクエリに対して、毎回違うSQLで抽出させることが可能であれば、
その方法を教えてくださいませんか?

今日、行った対策はエクスポート時にサブフォームの元になるフォームもDoCmdにて立ち上げ、
そのフォームをDoCmd.OutputtoでExcelに出力するようにしました。(元になるフォームは
DoCmd.Movesizeにて見えないようにした。)
これで一応Excelにする事は出来たのですが、Excel5.0とかって言うVer.なので、ちょっと嫌です。
日付型のデータもDay-month-Yearのデータ型になってしまいます。(希望はyyyy/mm/dd)。
物理的に存在させられるクエリへの毎回違うSQL文での抽出方法 またはExcel2000に出力できる方法が
あれば教えてください!お願いします。
0712デフォルトの名無しさんNGNG
>>711
http://pc2.2ch.net/test/read.cgi/bsoft/1047052026/418-424 の422を参考に

書式が気に入らなければExcelのライブラリを使って
ファイルを開く、範囲選択、書式を変更、上書き保存
AccessからExcelをコントロールする方法はググればすぐ見つかる。
0713通りすがりNGNG
すいません、初歩的な質問かもしれませんが。
VB6で、access97のデータベースをacess2000に変換して
保存したいのですが、方法を教えてください。
知り合いに「簡単だよ」って言われてるんですが、
いろいろ調べてみてもわかりません。
お願いします。
0714デフォルトの名無しさんNGNG
>>713
知り合いに聞け
0715デフォルトの名無しさんNGNG
>713
TransferDatabase
0716デフォルトの名無しさんNGNG
>>715
Accessが無くてもVB6で使えるのですか?
0717デフォルトの名無しさんNGNG
つかVB6スレで聞けよ
0718デフォルトの名無しさんNGNG
>713
Microsoft DAO 3.6 Object Library 参照して

Call DBEngine.CompactDatabase("C:\access97.mdb", "C:\access2k.mdb", , dbVersion40)
0719デフォルトの名無しさんNGNG
>>712
サンクス!参考にガンガリまつ。
0720デフォルトの名無しさんNGNG
クエリの現在行の値ってとれますか?
0721デフォルトの名無しさんNGNG
ROWNUM
0722デフォルトの名無しさんNGNG
ボラクルスレと間違えた
0723デフォルトの名無しさんNGNG
あるテーブルがレコードソースになってるデータシートを開き、
中身を書き換えて他のレコードに移動しないまま(カレントは変わらないまま)
コマンドボタンに埋めこんであるSQL(同テーブルにある同じデータを削除する)
をテーブルに発行したら、
「他のユーザーが使っているため、更新できません。」といわれますた。
me.refreshとかも削除SQL直前に実行したんだけどだめ。
大丈夫だったのが、キーボードのF9を押してからコマンドを
クリックしてSQL発行したり、他のコントロールを一旦クリック
してから削除ボタンを押したらパターン。
多分一旦リフレッシュしたら処理を終了させないと、テーブルを
掴んだままになってしまうってことだと思うんだけど、
これの回避方法知ってる人おながいします。
0724 NGNG
http://www.book-i.net/ad05
0725デフォルトの名無しさんNGNG
Access2000です。
ODBCデータベース(SQL鯖2k)へのリンクテーブルを複数作りました。
テーブルビューから普通にテーブルを開くと、正常にSQL鯖のテーブルの
内容を見ることができます。データの変更や削除、追加も問題ありません。

ところが、そのリンクテーブルに対して追加クエリや更新クエリを使おうと
すると「リンクするテーブルが見つかりません」というエラーが出ます。
MDBからそのリンクテーブルを削除し、再度リンクしてみましたが状況は
変わりません。

エラーメッセージを頼りにGoogle、MS、ヘルプ・・・と検索してみましたが、
有効な情報が見つかりません。
こんな現象に出会った事のある方、力を貸して下され・・・
0726デフォルトの名無しさんNGNG
そのクエリをここにコピペしてみ

テーブル名が間違ってるかそんな感じだろう
dbo_XXXXXとか頭に余計なのがくっついてる
0727デフォルトの名無しさんNGNG
Accessじゃなくて、
mdb(ファイル鯖上)+ Jet + DAO||(ADO+Microsoft.Jet.OLEDB)
の話だけど、

JetってクライアントPC(問い合わせ元)
にあるよね。ということはSQLを実行する
のは各クライアントPCだけど、
データはSQLで使用する(from内の)
各テーブルデータ+インデックスデータを
全てクライアントPCに持ってきてから
SQLを実行しているわけ?

おまえら教えてください。
0728デフォルトの名無しさんNGNG
>>727
> おまえら教えてください。
ここじゃこんな書き方でまともなレスはつかないよ。
おれもつけん。
0729デフォルトの名無しさんNGNG
>>727
その通りだよ。
だから、ネットワークが細いところでは
気を付けないといけない。

>>728
ここ(2ch)じゃ、普通の書き方だと思うけど。
pin'sという掲示板と勘違いしてないか。
0730デフォルトの名無しさんNGNG
ちょっと、ちがうな。

mdbのアクセスはファイルの
接続=open
検索=seek
のイメージ。
ヒットしたレコードは
結果セットとしてメモリ
(recordset)に格納される。

テーブル検索の場合、結果的には
テーブル全件持ってきて(なめて)
しまうけどね。

データデバイスがネットワーク上
にあるってことだけで
この辺りは他のサーバ型DBMSと
同じだよ。

漏れもここでは書き方に違和感は
特にないけど。
0731デフォルトの名無しさんNGNG
>>725
ADPにしとけ
0732デフォルトの名無しさんNGNG
ACCESSじゃフィールド名にNOTEって使えないのか!
ODBC経由じゃUPDATE文でエラーになるし・・・
(しかし、SELECTはできる・・・)

っていうか、ACCESSでSQL予約語じゃないけどフィールド名で使えない語集
ってないですか?

おしえてください、おながいします
0733デフォルトの名無しさんNGNG
[NOTE]
と[]でくくってみれ
0734725NGNG
解決しますた。
私も>726タソが書いたように名称の問題と思っていたのですが・・・

リンク先のSQL鯖にて、該当テーブルにトリガが設定されていて、
しかもそのトリガにバグがありエラーを吐いているのが原因でした。
試しにトリガを削除してみたところ、件のエラーは出なくなりました。
0735デフォルトの名無しさんNGNG
>>733
うぉぉぉぉぉ
ありがとうございます。
もう少しで、フィールド名を変更して、全プログラムを修正するところでした・・・
0736デフォルトの名無しさんNGNG
Access2002を使用しています。
レポートを表示する際、空データ時のイベント使用しているのですが
データが存在するにも関わらず、空データ時のイベントが発生してしまいます。
このような場合、どのように回避したら良いのでしょうか?

レポートPG:


Private Sub Report_Deactivate()

DoCmd.Restore
DoCmd.OpenForm "FRM_BBB"

End Sub

Private Sub Report_NoData(Cancel As Integer)

MsgBox "データがありません!", vbInformation, "情報"
Cancel = True

End Sub

Private Sub Report_Open(Cancel As Integer)

DoCmd.Maximize '画面サイズを最大
Me.RecordSource = TBL_AAA
End Sub

空データのメッセージ表示後、
「実行時エラー’2501’: OpenReport アクションの実行はキャンセルされました。」
と表示されます。
10回に1回の割合でレポートが正常に表示されるので原因が分からず困っています。
0737デフォルトの名無しさんNGNG
ACCESS95からWord97に
レポートをエクスポートすると
文字化けするんだけど

なんで?
0738736NGNG
呼び出し元のPGにて
Sleep(5000)
とやったらいきました。
0739_NGNG
http://homepage.mac.com/hiroyuki44/
0740デフォルトの名無しさんNGNG
Accessって、viewを使えないの?
0741_NGNG
http://homepage.mac.com/hiroyuki44/
0742デフォルトの名無しさんNGNG
queryがviewの代わりに使える。
0743デフォルトの名無しさんNGNG
・クエリーはVIEWそのまんまの機能
・標準モジュールで作った関数はそのままSQLの中から使える
0744デフォルトの名無しさんNGNG
なるほど、クエリーが使えたのか。
マニュアルやヘルプ探してもviewがぜんぜん見つからないんで、ないのかと思ったよ。
0745デフォルトの名無しさんNGNG
>723
他のコントロールを一旦クリックしてから削除ボタンを押すんで
できるなら、クエリ実行前に、他のコントロールにフォーカスを移す
ようにしてみては?

そのまえに、クエリ実行時にテーブルデータを直接は
操作できないようにしとくのが無難かも。
0746デフォルトの名無しさんNGNG
Access2000を使ってます。
Jpeg画像の縮小保存をしたいんですけど、何か良い方法はないでしょうか?
VB用はフリーのDLLとかがあるみたいなんですけど・・。
Accessのイメージコントロールから hDC を取得する方法とかでもいいんですが。

やりたいことは写真管理ソフトで、コメントを付けて印刷したいのです。
仕事で使うもので、印刷書式が客先指定でいくつもあるので、やむなく自作しようかと。

印刷とかはいいんですけど、画面表示するときにイメージコントロールに読み込むと時間が掛かるので、縮小画像を作ろうかと思っているんですが、数日悩んでます。
0747デフォルトの名無しさんNGNG
モジュールからテーブルのデータ型を変更できますか?
自分では出来なかったため、変更済みのワークテーブルを作って
それで上書きしようとしたのですが、リレーションばりばりで
上書きできねーよと怒られてしまいました。

ちなみにACCESS2000です。
0748デフォルトの名無しさんNGNG
DAOのTabledefあたりじゃないの。
っつーかさ、ポコオコ型を変えちゃDBの意味無いじゃん。
リレーションを張ってるならなおさら。
0749デフォルトの名無しさんNGNG
>>747
設計したいDBの仕様を書かないとわけわからんよ。
0750デフォルトの名無しさんNGNG
>>746
Access内で動的にやろうとすると、DIB作ってやることになるのかなあ?
jpegだと面倒だね。
他のツールなどでサムネール作れるなら
ファイル名変更を統一して、表示させるのがいちばん簡単かと。
0751デフォルトの名無しさんNGNG
>>748
Tabledefでは出来なかったよ。
型が変わるのは決まってしまったことなのでいたしかたない;;
ALTER TABLEでも型変換は無理だったし…
どうしたものかな
0752デフォルトの名無しさんNGNG
>>751
1. 一時テーブルに変更したいフィールドのデータとキー情報を書き出す
2. 型を変更したいフィールドを Delete
3. 変更後の型のフィールドを作成して Tabledef に Append
4. フィールドの OrdinalPosition を変更
5. フィールドのデータを UPDATE で戻す

※リレーションや制約で変更できない場合は事前に削除して処理後に再作成する

Access のテーブルデザインも大体同じだと思う
0753デフォルトの名無しさんNGNG
>>752
おお、ありがと。
さっきordinalpositionの存在を知ってから、一気に解決しました。
まさに752氏の手法です。
無知な私をお許しあれ。
0754746NGNG
>>750
久しぶりにAPIなんか使ったらキツイっす。|〃´△`)-3ハゥー
とりあえずDIB作って保存までは出来たんですけど、縮小の方法がわかんないー。
VBみたいにAccessのイメージコントロールのプロパティに hDCプロパティがあればいいのにー。
そこらへん、適当にやってるんで、screen から hDC とって StretchBlt 掛けたりしたんですけど、やりかたがまずいみたいで、出来ないです。
CreateCompatibleDC やら CreateBitMap やらやっても、ダメです。
イメージコントロールのhDCの取得法とか無いんですかね?

どなたか外部からパラメータ起動して縮小画像を作ってくれるフリーソフトとかご存知ないですか?
0755デフォルトの名無しさんNGNG
あの、VC++6.0からAccess2000のmdbファイルを扱いたいんですけど、

最適化/修復ってどうやるんですか?API探したんですけどみつからなくって、
手動でやるしかないんでしょうか。
0756デフォルトの名無しさんNGNG
CompactDatabase
0757755NGNG
>>756
どもーサンクスです。
0758デフォルトの名無しさんNGNG
C/SでC=Access2000 S=Oracle8の構成でシステム構築
しようとしているのですが、この組合せの場合、Net8とか
いうソフトが必要らしいですね。
こういうソフトをインストールすることなしに、Oracle8と通
信する方法はありますか?
0759デフォルトの名無しさんNGNG
>>758

ODBCドライバだけあればいいんでないの?

http://otn.oracle.co.jp/software/tech/windows/odbc/index.html
0760750NGNG
>>754
フォームのhWNDとってサブフォームにして書くとかあるかもしれんが
やったことないので、とやかく言えん。
でも、dibで(ファイル?)保存できるのなら、やりようはあるような。
dib二つ作って、StretchBltして書き込み。imageに表示とか。
0761デフォルトの名無しさんNGNG
>>759

リンク先からさらにOracle ODBC Drivers for Oracle 8.1.x のダウンロード
のところをみると「対応Net Client」とあり、ここにNet8の名前があるので、
おそらく必要なのではないでしょうか。
0762デフォルトの名無しさんNGNG
コントロールの hWnd って取得できませんか?
0763デフォルトの名無しさんNGNG
>>761
access&オラ8で開発したが、何も必要なかったぞ
そもそもNET8なんぞ見たことすらもない(ワラ
0764デフォルトの名無しさんNGNG
>>763
どうやって接続したか教えてやれよ
人を嘲笑するだけの書き込みはいらないよ
0765デフォルトの名無しさんNGNG
社員"A" 時刻"10:00" 作業内容"営業"    詳細"行き先の地図"
社員"B" 時刻"10:00" 作業内容"製造"    詳細"参照URL"
社員"A" 時刻"11:00" 作業内容"打ち合わせ" 詳細"メールを参照"
社員"C" 時刻"12:00" 作業内容"営業"    詳細"予定時間"

Access2000で、上のようなデータを管理したいんですけど、"詳細"の項目
が画像になったりURLになったり、その他メールの内容や予定時刻など
いろんな種類のデータを入れたいんですけど、こういう場合ってどんな
風にテーブルを作るのが効率いいんでしょうか。
0766765NGNG
あ、あと社員毎の一日の作業内容や、時刻毎の各社員の作業内容
などを条件つきで検索して一覧できるようにするにはどうしたら
いいんでしょうか。
0767デフォルトの名無しさんNGNG
>>758
OracleのODBCドライバはNET8なりの
ミドルウェア(接続ライブラリ)が必要。

http://otn.oracle.co.jp/software/tech/windows/odbc/req_32bit.html
0768デフォルトの名無しさんNGNG
763が言ってることは本当なの?
0769デフォルトの名無しさんNGNG
>>768
全て環境が整った(運用チーム等がセットアップ済みの)
マシンで開発していたと思う。
0770デフォルトの名無しさんNGNG
>>765
「プログラムで処理するもの」を考えて、それだけフィールド用意しろ。
表示上「詳細」をひとつにしたいなら、区分のためのフィールドを用意。

ってマジレスがつらいんだけどな・・・
0771デフォルトの名無しさんNGNG
DB板なんてできたんじゃん。しならかったよ。
http://pc2.2ch.net/db/
0772デフォルトの名無しさんNGNG
Accessで、テーブルや項目の名称に全角を使うとなにかまずいことってありますか?
0773デフォルトの名無しさんNGNG
教えてください。
Right(" " & CInt([R]),3) & "レース"
ACCESS2000のDBをWIN98SEからWIN2000にうつしたら、
数字と文字をつなぎ合わせる部分で拒絶されているんですが
WIN2000固有の問題なんでしょうか?
WIN2000もACCESS2000です。
0774デフォルトの名無しさんNGNG
>>772
Accessのみで完結するシステムなら別に全角文字でも構わないけど、
外部データベースをODBC経由で使うように修正するとなると面倒くさいことになるかもね。
0775デフォルトの名無しさんNGNG
>>773
こんな質問では回答できないと思われ。

おまいは自分の質問を読み直したか?
その内容で他人に伝わると思ったのか?
0776デフォルトの名無しさんNGNG
>773
ほんとうか?本当に文字列連結でコケているのか?
Cintでコケとるのと違うのか?
0777デフォルトの名無しさんNGNG
エラーが出るならエラーメッセージを書き込めバカ
0778デフォルトの名無しさんNGNG
>>775
おれの文章力はこんなものなのでお許しください。
>>776
Sumとか使って連結してるとこでも問題がおきているので。
[R]は01,02,03〜12まで
クエリーのデザインビューを開くとSQLビューしか開けない。
98SEではマクロのなかのクエリーで今日も正常にうごいています。
Access2.0から95のときも文字列も編集のやり直しにはくろうしたが、
WINDOWSを変えても問題がおきるんですか。
ちなみに俺のやってるのは競馬新聞作成。参考資料
http://weg.infoseek.livedoor.com/03.pdf
宝塚記念の新聞です。
0779デフォルトの名無しさんNGNG
>>777

クエリ式'(Right(" " & Sum(IIf([tr]="ダ",[acc1],0)),3)+Right(" " & Sum(IIf([tr]="ダ",[acc2],0)),3)+Right(" " & Sum(IIf([tr]="ダ",[acc3],0)),3)+Right(" " & Sum(IIf([tr]="ダ",[acc4],0)),4))'この関数は式では使用できません
0780デフォルトの名無しさんNGNG
☆頑張ってまーす!!☆女の子が作ったサイトです☆
       ☆見て見て!!
http://yahooo.s2.x-beat.com/linkvp/linkvp.html
0781デフォルトの名無しさんNGNG
http://weg.infoseek.livedoor.com/03takara.pdf
でした。
0782デフォルトの名無しさんNGNG
>>774と>>779がぜんぜん合ってないんですけど
0783デフォルトの名無しさんNGNG
>>778
新聞貼るより、テーブルの説明が必要
データ型が不適切か、Nullが入っているのでは
0784デフォルトの名無しさんNGNG
>>782
クエリ式'joumei([JO]) & Right(" " & CInt([R]),3) & "レース"' この関数は式では使用できません
マクロを実行するとうえのエラーそのクエリを単独だと779
joumeiはユーザー定義関数
0785デフォルトの名無しさんNGNG
ACC1ACC2ACC3ACC4KETTOFKYOJOTRBA
0013A.P. Indy         1200京ダ
0001A.P. Indy         1200京ダや
0003A.P. Indy         1400京ダ
0002A.P. Indy         1400京ダや
1015A.P. Indy         1800京ダ
0786デフォルトの名無しさんNGNG
acc1,acc2,acc3,acc4 数値型
KETTOF、KYO、JO、TR、BA テキスト型
NUllはない。

をクロス集計し、テーブル作成するクエリー
0787デフォルトの名無しさんNGNG
なんか変な呪文が書き込まれてるな
0788デフォルトの名無しさんNGNG
http://weg.infoseek.livedoor.com/708.mde

MDEにしたらうごいた。
新規作成エラーおこすMDBからテーブルとクエリーをインポートうごいた。
エラーおこすDBを最適化うごかね なんでじゃ。

なむあみだぶつ。うちはたしかJYOUDOSHINSYUU おやすみなさい。
0789デフォルトの名無しさんNGNG
>>788
新しいMDBファイル作って、すべてをインポートしろ
0790746NGNG
JPEG画像の圧縮、結局Accessでやるの断念しました。
結局、昔買ってずーっと使ってなかったVB4(笑)で作って外部起動することにしました。
ついでに、画像サイズの変更だけじゃなく回転とかの機能も付けて。

やはり、Accessだけだと細かいところが辛い・・。
0791デフォルトの名無しさんNGNG
>>789
ありがとうございます。
ACCESS2.0から受け継いだDBがもんだいだったみたいです。
新規作成して、インポートしたら無問題でした。

インポート時にこんなエラーもでました。

このデータベースは不正な状態のためひらくことができません。
「ツール」メニューの[変換」コマンドでなくDAOのCompactDatabase
メソッドをつかって.....データベースの1部が正しく変換されていません。

これがでてからは開こうとすると100%このメッセ維持でした。
おれに正規のワザ以外つかえるわきゃないのにね。

おさわがせ。
0792デフォルトの名無しさんNGNG
>MDEにしたらうごいた
は新規作成にインポートしたMDBをMDEにしたからうごいただけでした。
2000でうごかないMDEもつくりました。
http://weg.infoseek.livedoor.com/708x.mde
0793_NGNG
http://homepage.mac.com/hiroyuki44/
0794750NGNG
>>790
オツカレサン
0795デフォルトの名無しさんNGNG
単発質問すいません。
レポートの表示で、フッタのみが表示されない状況となっている場合
どのような原因が考えられますでしょうか?以下の様なレイアウトになっています。

 -ヘッダ-----
 料金の合計
 ID   金額

 -詳細-----
 01   100.5
 02   50.5
 03   65
 04   35.5

 -フッタ-----
 小計  =Sum(金額)

本来であれば小計の右側に(金額)フィールドの値の合計[251.5]が
表示されると思うのですが、フッタそのものが全く表示されません。
=Sum(金額)のエラーだけであれば「#エラー」などと出る筈なのですが・・・?

詳細の金額フィールドはもともと小数点以下を表示しない状態になっていました。
フッタの小計に関してはそのままです。書式の設定は、どちらも行っていません。

どなたかご教授頂ければと思います。
0796795NGNG
すんませんageます。
0797デフォルトの名無しさんNGNG
フッタの可視
レポートフッタ?
0798デフォルトの名無しさんNGNG
ネットにつながっているLinuxサーバのIPが200.200.200.200で、
そのLAN内に192.168.0.1のDBサーバがあるとします。
192.168.0.1のDBサーバに外部からAccessで接続する
手段はあるのでしょうか?
0799デフォルトの名無しさんNGNG
DBサーバ?
ファイルサーバでしょ?
0800デフォルトの名無しさんNGNG
iptablesの静的マスカレードの設定で
200.200.200.200:DBサーバのポート#のパケットについて
192.168.0.1のマシンに転送させるようにする。
またDBサーバから返すパケットについても外に出すように
しなければならない。
っていってもAccessユーザに言っても理解不可能かもな...
0801デフォルトの名無しさんNGNG
>>799
ODBC接続対応DBMSかもしれんぞ MySQLとかPostgreSQLとか
0802デフォルトの名無しさんNGNG
>798
ネトワクについて勉強してくだちぃ。
通信技術板とか、ttp://www5e.biglobe.ne.jp/%7Eaji/3min/とか。
0803デフォルトの名無しさんNGNG
>>802
ハッカーキボン厨だから、相手にすんな。
0804デフォルトの名無しさんNGNG
>>803
いや、キモイから
0805795NGNG
>>797さんありがとうございます。
フッタの可視は、すべてONになっているのですが・・・。

どうしようもなかったので、新しいMDBにエクスポートし直したら直りました。
アドバイスありがとうございました。
0806山崎 渉NGNG

 __∧_∧_
 |(  ^^ )| <寝るぽ(^^)
 |\⌒⌒⌒\
 \ |⌒⌒⌒~|         山崎渉
   ~ ̄ ̄ ̄ ̄
0807デフォルトの名無しさんNGNG
age
0808デフォルトの名無しさんNGNG
テクニカルな質問ならpin's Laboratoryの方がいいよ。
あそこは素晴らしい!
0809デフォルトの名無しさんNGNG
>>808
禿げしくガイシュツだが、あそこは初心者向け。
知ったか、厨房の集まりダヨ。
0810デフォルトの名無しさんNGNG
登録されたデータを検索する機能の実装に悩んでいます。
2003年01月01日より10日以内
と指定された場合、
去年のデータをひっぱってくるべきでしょうか?
私はひっぱってくるべきと思うのですが、
身近な人から反対され悩んでいます。
いかがでしょうか?

0811デフォルトの名無しさんNGNG
>>810
なんで反対されてる理由きかないのん?
0812デフォルトの名無しさんNGNG
>>810
2003/1/1〜2003/1/10 なのか 2002/12/23〜2003/1/1 どっちよ
オレは前者だと思ったよ

「2003年01月01日より10日以内」てどうやって入力するのかな
直感的に理解できないインタフェースは止めれ
0813デフォルトの名無しさんNGNG
>810
私も2003/1/1〜2003/1/10だと思った。
基本的に ×/×/×〜○/○/○ と言う指定にした方が良いと思うけれど?
あるいは基準日×/×/× 前○日 後△日の指定とか。
0814810NGNG
>>811-813
レスありがとうございます。
インターフェースについては問題が解決した上で考えるつもりでいます。

私は
2002/12/13〜2003/01/10
と思いました。

今日から10日以内にこれだけの仕事をこなせ!
といわれると未来10日を指しますが、
ポイント100から5以内と言われると95〜105を指しますよね?
ですので2002/12/13〜2003/01/10だと思っています。
「今日から」と未来10日
今回は過去の日付を指定するので指定日より後ろも含める必要があるのかと
思っています。
どうでしょうか。
現在のインターフェースはコンボボックスやらテキストボックスやらで
X月X日 【より/のみ/以前/以降】X日【以内/以前/以降】
みたいな感じです。【】はコンボボックス
必要に応じてEnableを切り替えています。
そこで一番後ろのコンボボックスに「以内」を指定した時の処理に困っています。
0815810NGNG
↑
「今日から」と未来10日 →「今日から」なら未来10日
でした。
文面的にわかりにくいので訂正させていただきます。

0816813NGNG
何だか難しいですね。
私は期間による検索の場合テキストボックスを2つ用意しています。
【yyyy/mm/dd】(A) 〜 【yyyy/mm/dd】(B) で、
1.前の指定がない場合は、全データの【yyyy/mm/dd】(B)以前
2.後ろの指定がない場合、全データの【yyyy/mm/dd】(A)以後
3.【yyyy/mm/dd】(A)及び【yyyy/mm/dd】(B)の指定があればその期間
4.ただし【yyyy/mm/dd】(A)=【yyyy/mm/dd】(B)ならば【yyyy/mm/dd】(A)
5.【yyyy/mm/dd】(A)>【yyyy/mm/dd】(B)ならば期間は【yyyy/mm/dd】(B)〜【yyyy/mm/dd】(A)
と判断させています。

テキストボックス【yyyy/mm/dd】(A) 〜 【yyyy/mm/dd】(B)の他に
基準日を【yyyy/mm/dd】(A)として 以前【×】日 以後【○】日と言うテキストボックスを設けては?
この場合、以前【×】日あるいは以後【○】日に入力した場合は、【yyyy/mm/dd】(B)はクリアされ、
【yyyy/mm/dd】(B)に入力した場合は、以前【×】日あるいは以後【○】日がクリアされる。

ちなみに>814の X月X日 【より/のみ/以前/以降】X日【以内/以前/以降】
の【以内/以前/以降】は例えばX日"間"【前後/前/後】の方が通じ易いのでは?
0817デフォルトの名無しさんNGNG
私なら
 開始日 指定あり/なし 日付
 終了日 指定あり/なし 日付
とするけど・・・あと、○日間、というのが欲しければ追加して・・・

SQLに直した時、指定しやすい様に設計したほうがよいのでは・・・
0818デフォルトの名無しさんNGNG
Access XPでデータベースの暗号化/解読ってありますが、
これ繰り返してたら今どっちなのか分からなくなったんですけど、
どうやって確かめるんですか?
0819810NGNG
たくさんのアドバイスありがとうございます。
いろいろ考えた結果以下のようになりました。
ttp://honny2.hp.infoseek.co.jp/data/No_0186.jpg

結果的に「以内」というのは必要ないように思えてきました。

前、後 二つの入力欄を用意することはさけたかったので↑のようになりました。
これでどんな条件がきても大丈夫なはず、と思っています。
いろいろ参考になりました。
ありがとうございます。
0820デフォルトの名無しさんNGNG
>819
それでいいと思う。シンプルにする事で余計な作業が減る。
Windowsのファイル検索の条件指定UIも参考になるかもね。
0821818NGNG
教えてクレよー
0822明示しなきゃ駄目か?NGNG
>>821
反応が無いのは、たぶん、誰も知らないんだよぅ(w
0823デフォルトの名無しさんNGNG
>>822
気になって試しちまった・・・
Access2000だと、暗号化/解読で、暗号化/解読元データベースを選択した後、
暗号化先データベースの選択画面になるか、解読先の選択になるかで
わかると思う。XPでも同様と思われ。

ファイル自体が小さければ、メモ帳で開いても分かるが・・・
0824デフォルトの名無しさんNGNG
>暗号化先データベースの選択画面になるか、解読先の選択になるかで
Access XPではどちらも「暗号化先データベース」で見分けがつかん。
秀丸で開いてファイル内容比較すると確かに違うのだが、どっちが
どっちか分からん。

どうすればいい?
0825デフォルトの名無しさん NGNG
●暗号化すると
1.暗号化していないファイルに比べファイルのサイズが大きくなる。
2.圧縮(LZH化など)してもほとんど圧縮できなくなる。
暗号化していないファイル:100Kバイト→5Kバイト
暗号化しているファイル:104Kバイト→101Kバイト
ってな感じ。
0826_NGNG
http://homepage.mac.com/hiroyuki44/
0827デフォルトの名無しさんNGNG
>>824
再び2000の場合で申し訳ないが、
・暗号化されてない場合、
 Program Files、Libraryなどの単語(間に若干、余計な文字が入る)、
 Name="db1"(ファイル名がdb1.mdbの場合)などが
 読み取れる

・暗号化されている場合、
 先頭行のStandard Jet DBは読み取れるが、
 それ以降は基本的に読み取れる単語が無い

そんな感じです・・・あとは自らの感覚を信じるのが良いかと・・・
0828818NGNG
>>823-827
ありがとうございます。
0829デフォルトの名無しさんNGNG
Daoで.mdwファイルの作成ってどうやるんでしょうか。

Access XPでセキュリティウィザードを実行すると.mdbファイルが
.mdwファイルからしか開けなくなりますよね。それをDaoで行いたい
んですけど、やり方がわかりません。
0830829NGNG
ちょっと調べてみたけど難しいようだ。

CDaoDatabase.Create()で.mdbが作成できんのに、なぜCDaoWorkspace.Create()
で.mdwが作成できない。
0831_NGNG
http://homepage.mac.com/hiroyuki44/jaz08.html
0832デフォルトの名無しさんNGNG
DAO でレコードセットを作成し
データを単票フォームには表示出来るんですが
データシードビューでの表示がうまくいきません
どうやったら良いのでしょうか
0833デフォルトの名無しさんNGNG
Access2000で時間間隔を格納したいんですけど、データ型って
日付/時刻型ではなくテキスト型なんでしょうか。
0834デフォルトの名無しさんNGNG
Access2000の.mdbなんですけど、フィールドの設定値をルックアップ
ウィザードで設定している場合、CDaoRecordset.SetFieldValue()で
どうやって扱うんでしょうか。
0835デフォルトの名無しさんNGNG
☆★ 新商品 ゾク・ゾク 入荷!! 急げ〜!! ☆★☆
★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
☆★ 送料激安!  スピード発送!  商品豊富!   
★☆      http://www.get-dvd.com        
☆★ 激安DVDショップ 「GETDVDドットコム」 
★☆      http://www.get-dvd.com        
☆★ 今すぐアクセス Let’s Go!   急げ! 
★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
0836_NGNG
http://homepage.mac.com/hiroyuki44/
0837_NGNG
http://homepage.mac.com/hiroyuki44/jaz04.html
0838デフォルトの名無しさんNGNG
1.プログラムDB
2.データDB
3.媒体に保存したDB

※1はリンクテーブルとして2を使用しています。

実は3の1テーブルを2に保存(更新)したいのですが、
プログラムで制御する方法はないでしょうか?
0839デフォルトの名無しさんNGNG
1から3にリンク張って2へUpdateすりゃいいだけでわ?
0840デフォルトの名無しさんNGNG
>>838
FROM TBL IN A:\DB.MDB
0841デフォルトの名無しさんNGNG
VBAでテーブル定義を変更したいのですが、
変更先のmdbが使用中だと変更できません。
そこで、
if db.tabledefs("tablename").updatable then
変更処理
end if
というようにupdatableでチェックしようとしたのですが、
mdbが使用中にもかかわらずtrueが返されます。
もちろん変更処理でエラーが発生して止まってしまうのですが、
なにか間違ってますか?
0842デフォルトの名無しさんNGNG
>838
私は1.実行プログラム部 2.データ部(リンクテーブル)に分け、
1.でボタンを押すとネットワーク上だろうがFDだろうが他ドライブへでも
データをバックアップするようにしたよ。
リンクテーブルをバックアップするのに非常に苦労した。
結局テクニックと知識がないので、
1.バックアップ指定個所にバックアップ用のmdbを作成
2.一度リンクテーブルのテーブルを実行プログラムmdbに一時テーブルとしてコピー
3.実行プログラムにコピーされた一時テーブルをバックアップmdbにコピー
4.バックアップし終えた一時テーブルを削除
と言う方法で処理している。
他には、パススルーを使うとか、CompactDatabaseを使う方法があると思う。
0843山崎 渉NGNG
(^^)
0844デフォルトの名無しさんNGNG
保守
0845デフォルトの名無しさんNGNG
Access2000で質問です。
テーブルデザインで、テキスト型のフィールドの「書式」に
「\\#,##0」と設定し、通貨型と童謡の表示方法にしようとしたのですが、
書式が無視され、そのまま表示されてしまいます。
試しに書式「yyyy/mm/dd」と設定し、日付を入れてみても反映されません。
なにか書式を有効にする手順が必要なのでしょうか?

本当は通過型にしたいのですが、文字列が入る場合もあり困っております。
よろしくお願いします。
0846デフォルトの名無しさんNGNG
>>845
文字列を入れないようにして数値型にするか、書式表示を諦めるかのどっちか
0847デフォルトの名無しさんNGNG
>>845
>>ヘルプ("Format/書式" プロパティ)
>設定値は、データ型によって異なります。
0848デフォルトの名無しさんNGNG
ACCESSの質問よろしくおねがいします。
レポートのレコードソースにクエリを設定して、
詳細にレコードデータを出しているのですが、
詳細結果の幅が結果によって違うのです。
項  目 
---------・・・詳細
1 A B C D
2 A B C D
←ここが空いてしまう。
3 A B C D
もっと条件を書かなくてはいけないけど、
とりあえず、考えられる原因わかる方いらっしゃいますか?
0849デフォルトの名無しさんNGNG
……横幅?
0850848NGNG
ごめんなさい。縦幅です。
項  目 
--------- ・・・詳細
1 A B C D
2 A B C D
XXXXXXXX ←ここが空いてしまう。
3 A B C D

2と3の間があいてしまうんです。
Dの部分はサブレポートになっていて、
親フィールドと子フィールドとのリンクをしています。
見てみると、どうもこのDに値がない時は、縦幅が
レポートの詳細幅どおりになるのですが、Dに値がある時に
なんとなく1のレコード分のの幅があいてしまうのです。

今も作ってる最中です。
納期があるので、焦ってます(>Q<)
0851デフォルトの名無しさんNGNG
>>848,850
さっき試してみたが、再現性がない。

1.とりあえず、親レポートの詳細セクションの背景色を変えて
 サブレポートが表示されている部分の大きさを確かめる。

2.サブレポートの縦幅がおかしいなら、プロパティをデフォルト以外の
 値にしたところを探ってみる。(ヘッダ、フッタが悪さしているのでなければ、だが。)

3.それでだめなら、納期が延びることを祈る。

これでどうだろうか。条件不足で分からんので。
0852848NGNG
851さんすみません、
再現してくださって、ありがとうございます(T_T)
説明したいのですが、簡潔に説明出来ないんです。
(時間がないのでメモも書いてなく、作りが思い出せない)
1.2.はある程度試してたんですけど、未だ解らず・・・
レイアウトの事だから、とりあえず今は最後にまわしてみます。
しかし終わるのかな〜、、もう泣きそうです。
0853教えてくださいNGNG
下記で承認CKがyesの場合に、状況に1を設定するようにしてるのですが
それと併せて承認CKがNoの場合に状況に0を設定するようにしたいんです。
どなたかご教授ください
Private Sub 承認ボタン_Click()
If MsgBox("承認して宜しいですか?", vbYesNo + vbQuestion) = vbYes Then
DoCmd.SetWarnings False
DoCmd.runsql " UPDATE 承認テーブル SET 承認テーブル.状況 = 1" _
" WHERE 承認テーブル.承認CK = Yes ;"
DoCmd.SetWarnings True
End if

End Sub
0854848NGNG
上の848です。
あの〜私初心者なんですけど、
If文にElse使うか、Select Case で普通に出来ないんですか?
どこでエラーが起きるんでしょうかね?
0855デフォルトの名無しさんNGNG
>>853
何がわからんのか、もうすこし具体的に書け!
なめた質問すんな!

>>854
おまえも同類。
仕事ならプロ意識を持て!
こういう場所でも、きちんと設計解説できなきゃ
結局干されるよ、おまえ。

おまえら、当たりが来たらラッキーぐらいにしか思ってないだろ。
自分が回答する立場なら、どう思うか想像してみ。
0856デフォルトの名無しさんNGNG
>>853-854
気弱な855さんが勇気を振り絞ってカキコしてるってのに、反応無しかよ。
0857デフォルトの名無しさんNGNG
まだ15分しかたっていないぞ(^_^;)
0858デフォルトの名無しさんNGNG
853(21:46)、854(22:24)















                            855(翌01:59) ゴルァ!ゴルァ!
0859デフォルトの名無しさんNGNG
Accessで業務ソフト作っちゃうくらいだから文章による論理立った説明
なんて出来ないに決まってるじゃない?
0860デフォルトの名無しさんNGNG
>>858
855と856の間は7分しか経っていない。
0861デフォルトの名無しさんNGNG
>>859
Accessで業務ソフト作っちゃう人たちの根性を侮っちゃあいけないよ。
論理とかそんなものは余裕で超越してる。
0862デフォルトの名無しさんNGNG
倫理もな
0863デフォルトの名無しさんNGNG
>>862
それはAccess使いに限らず(ry
0864デフォルトの名無しさんNGNG
Accessで済むものをVB+Oracleで作るのもどうかと思う。
だまされるユーザがバカなのよといえばそれまでだが。
0865私はAccess使うお馬鹿さんNGNG
>853
私なら以下を付け加え
dim rdt as integer
以下を変更してみる
rdt=MsgBox("承認して宜しいですか?", vbYesNo + vbQuestion,"承認確認")
select case rdt
 case vbyes
  DoCmd.SetWarnings False
  DoCmd.runsql " UPDATE 承認テーブル SET 承認テーブル.状況 = 1" _
  " WHERE 承認テーブル.承認CK = Yes ;"
  DoCmd.SetWarnings True
 case vbno
  msgbox"承認されませんでした。",vbokonly,"承認却下"
End select

これでどうだろうか?
0866私はAccess使うお馬鹿さんNGNG
書き忘れましたが、承認を却下した時の処理に
0にする処理を書いた方がいいと思いますよ
0867848NGNG
848です(^_^)
>855
いや〜ごめんなさいです。。。
854につけたレスは、上の853さんに対してコメントしたものだったんですけど・・・
>>853 ってつけるの忘れてしまいましたでつ。

因みに私が853に言いたかった回答は、
上の865さんがちゃんと書いてくれてました。
Select Caseの方がスマートになっていいですよね。
0868山崎 渉NGNG
    (⌒V⌒)
   │ ^ ^ │<これからも僕を応援して下さいね(^^)。
  ⊂|    |つ
   (_)(_)                      山崎パン
0869855NGNG
>>867
そうかもしれないと思ったから、「同類」と書いた。
回答するなら、自分のスキルのいいわけなんぞしてもしょうがない。
自分で正しいと思ったことを書けばいい。(もちろん、確証が泣ければ検証すべきだけど)
俺も何年かここで質問回答してるけど、あからさまなDQNより微妙なほうが感にさわったりすんのよ。
勝手に切れる俺も俺だけどね。
まあ、好きにやってるからそんなに気にせんでくれ。

丁寧な返信あんがとさん。
まあがんばって、回答も出来るようになってちょ。
0870デフォルトの名無しさんNGNG
やっと基地外がいなくなったか。
0871デフォルトの名無しさんNGNG
タブキーでサブフォームに移ったフォーカスを
再びタブキーでメインフォームに戻らせたいのですが、
どうすればよいのでしょうか?
0872デフォルトの名無しさんNGNG
質問なのですが、DAO使ってSQLでmdbにcreate文でテーブル作ろうと
したるんですが、AutoNumberってデータ型的には何宣言すればいいんですか?
厨質問ですいませんが、もしよろしければ教えて下さい。

0873デフォルトの名無しさんNGNG
コントロールに記号付けれるのに
女医互換ないなんて・・・
0874デフォルトの名無しさんNGNG
Accessの質問です。
SQLServerからリンクテーブルを使ってmdbにテーブルを取り込むのですが、
この時に、主キーのないテーブルに対してリンクテーブル側のみにキーを設けたいと思っています。
リンクを作るダイアログに沿っていけば上記のことが可能なのですが、コードを記述して実現することが出来ません。
どのようにすれば出来ますでしょうか?
0875デフォルトの名無しさんNGNG
>>871
タブキーで移ったんなら、バックタブじゃないの。
Shift + Tab
0876デフォルトの名無しさんNGNG
>>871
Ctrl + Tab
■ このスレッドは過去ログ倉庫に格納されています