[過去ログ] Access VBA 質問スレ Part1 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
120
(1): 2013/06/21(金)00:57 AAS
access 2003 にて
SendObjectメソッドを利用して、メールを送信したいと思っています。

実際にメールを送れるようにはなっているのですが、
送信メール本文に「mdbファイルと同一ディレクトリにある単体の.msgファイルの本文」(.msgファイルの場所はフルパス指定でも構いません)
を表示させる事は可能でしょうか?

イメージ的には、テーブルから送信先アドレスを収集し、.msgファイルの本文の内容をテンプレートとして一括送信する
と言った感じです。
121: 2013/06/21(金)01:01 AAS
書き忘れました。
メール送信ソフトはoutlookです。
122: 2013/06/21(金)07:11 AAS
.msgファイルの形式ってたぶん公開されてないんだよなぁ
どうやってメールを.msgで保存してるかしらんが、そっちを変更した方が楽な気がする
outlookでもVBAは使えるぞ
123: 2013/06/30(日)18:38 AAS
>>120
OutLookのSession.OpenSharedItemで.msgファイルの読み込みできるが
他のアプリからOutLookいじるのはお勧めしない
OutLook側でmdbに書きだすとか、プレーンテキストで保存するとかした方が良いんじゃね
124
(1): 2013/08/31(土) NY:AN:NY.AN AAS
質問です
ODBCの接続する際に
IDとパスワードを入力するボックス(VBAで設定したものではない)がありますが、
初めから半角英数字になるように設定はできますか?
125
(1): 2013/08/31(土) NY:AN:NY.AN AAS
VBAで設定したものではないものを、VBAでどうこうするのは無理があります
126
(1): 2013/08/31(土) NY:AN:NY.AN AAS
>>125
ですよね。
IDやパスワードを入力するときに各々気を付けてもらうしかないですね。
127: 2013/08/31(土) NY:AN:NY.AN AAS
>>126
プロパティにないの?
128: 2013/08/31(土) NY:AN:NY.AN AAS
ODBCのミドル層で出てるダイアログだから、アクセス側からいじれるプロパティなんてないだろ
自分でIDとパスワード入力してもらうフォーム作ってそこに入力してもらえ
129
(1): 2013/08/31(土) NY:AN:NY.AN AAS
DBの持ち物か。すまん。
ダイアログの出る直前にACCESSで入力を固定して終わったら解除ってできないのかね。
(調べてない、ただの理想を述べてみた。)
130: 2013/09/01(日)00:30 AAS
>>129
>>124が言ってるのは多分、ODBCで接続するときにユーザとパスワードを指定しなかったときに出るやつ
自分でちゃんと接続できるユーザとパスワード指定したら出ない
間違ったユーザやパスワード設定したらしらん
131
(2): 2013/09/01(日)02:59 AAS
Access初心者です。
VBAでExcelからデータをコマンドボタンで自動インポートさせる物を
作っています。
インポート漏れがないかのチェック処理もさせたいのですが、
どのようにすればいいかわかりません、ご教授お願いします。
132
(2): 2013/09/01(日)03:24 AAS
>>131
レコード数で比較すれば?
133
(1): 2013/09/01(日)03:48 AAS
>>132
ありがとうございます。
仮に件数が合わなくてインポート漏れしたレコードを
特定するための処理をいれることはできますか?
134: 2013/09/01(日)03:59 AAS
ユニークキーで差分とれよ
少しは考えろよ
135: 2013/09/01(日)04:00 AAS
>>133
ユニークキーで差分とれよ
少しは考えろ
136: 2013/09/01(日)08:49 AAS
インポート漏れなんてあるの?
137: 2013/09/01(日)09:02 AAS
結構ある
あと勝手にデータ変換されてたりもする
138: 2013/09/01(日)09:25 AAS
そうか
ならインポートしてからチェックするより自前のコードでインポートした方がいいんじゃない?
139: 【だん吉】 2013/09/01(日)09:31 AAS
自分はそうしてる
140: 2013/09/01(日)10:05 AAS
ウィザードにまかせてるとひどい目にあう
141: 2013/09/01(日)10:35 AAS
Access初心者なので、そのVBAのコードの書き方がわかりません
教えていただけませんか
142: 2013/09/01(日)10:36 AAS
いいですよ
143: 132 2013/09/01(日)19:42 AAS
>>131
www.nurs.or.jp/~ppoy/access/access/acX014.html
144: 2013/09/01(日)20:23 AAS
インポート漏れするデータ欲しい
試してみたい
145
(1): 2013/09/01(日)23:14 AAS
数字型のとこに文字入ってるデータとか用意したらいいんじゃね
146: 2013/09/01(日)23:38 AAS
>>145
うーん、そういうデータをインポートすると普通にエラーとして扱われて
「テーブル名_$インポート エラー」 ってテーブルが生成されるから
インポート漏れのレコードがわからなくて困る、なんて状況にはならないんだよね
147: 2013/09/02(月)10:35 AAS
インポート漏れのレコードがわからなくて困る、なんて状況になると言ってる人はいないが
148: 2013/09/02(月)10:57 AAS
おもろいな
149: 2013/09/05(木)23:50 AAS
DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel8, _
strac, strxls, True, strrange
上記でインポート エラーになるので引数のacImportのところに、
作成したインポート定義にしたいのですができるのでしょうか
150: 2013/09/07(土)03:42 AAS
よし
151: 2013/09/07(土)16:59 AAS
そもそもワークシート変換にインポート定義とかないだろ
152: 2013/09/09(月)01:46 AAS
Accessの初心者です。
レポート印刷でページヘッダーのコードが変わったタイミングで改ページしたい
かつ詳細の明細行は4レコードだけで改ページさせる、両方の条件を満たせるには、
どうやって作成したらよいかご教授お願いします。
153
(2): 2013/09/09(月)02:08 AAS
ページヘッダーじゃなくて、その項目でグループ化してヘッダー作る
そのヘッダーかフッターで改ページを設定する

詳細の高さを4行分になるようにヘッダ、フッタや余白を調整する

つか、VBAまったく関係ない話
154
(1): 2013/09/09(月)07:18 AAS
>>153
ここはVBAのスレですよね?VBAと関係ある話をしてください。
VBAとまったく関係ない話をしたのはあなたです。VBAでお願いします。
155: 2013/09/09(月)13:03 AAS
VBAを一言で表すと
156
(2): 2013/09/09(月)13:20 AAS
>>154
マジレスしといてやるが、VBAでやるよりよっぽど>>153の方法の方が良いぞ
だがあえてVBAでやりたいなら
明細セクションの最初と最後に改ページコントロール(改ページ1,2)を配置して
Dim 行数 As Integer
Dim 前コード
Private Sub レポートヘッダー_Format(Cancel As Integer, FormatCount As Integer)
省21
157: 2013/09/09(月)13:22 AAS
う。 は空白に置換してくれ
つか普通に貼り付けできなくなったのかよ
158
(1): 2013/09/10(火)00:16 AAS
>>156
もう少し教えてください。。。
明細が5明細あった場合、

コードA
00001
00002
00003
省13
159: 2013/09/10(火)02:26 AAS
>>158
>>156が理解できないなら、VBAでやるのやめとけ
160
(3): sage 2013/09/17(火)19:50 AAS
Accessのクエリで、「クエリの並び替え条件を動的に変更する」方法を
教えて頂けないでしょうか。

現状は、下記のクエリを作成しましたが、並び替え条件として判定されません。

SELECT * FROM テーブル1
ORDER BY FORMS!画面1!テキスト1.Value

よろしくお願いします。
161
(1): 2013/09/17(火)20:22 AAS
>>160
SELECT * FROM テーブル1
ORDER BY FORMS!画面1!テキスト1.Value

これってどこに書いてるの?
162
(1): 2013/09/17(火)21:44 AAS
>>160
どうしてもやりたいならQueryDefとか使えばできるかもしれんが
動的にSQLつくってDoCmd.RunSqlでやる方がいいんじゃね
163: 160 2013/09/17(火)22:09 AAS
>>161
Accessの「クエリ」で定義していました。

>>162
ご指摘を受けた点を参考にクエリを作成した所、うまく行きました。
ありがとうございます。
164
(1): 2013/10/20(日)21:44 AAS
株価のデータベースを作りVBAで銘柄の抽出をしています
VBAを呼ぶ度にSQLで株価データを読み込んでるので日に何度もやると結構無駄です

そこでフォームをロードした時に纏めて銘柄毎のクラスオブジェクトを作り
フォームをアンロードするまで保持したいのですが可能でしょうか?

変数の保持はStaticで良いようですが、配列化してるオブジェクトの保持はどのようにするのでしょうか?
165: 2013/10/20(日)22:06 AAS
view
166: 2013/10/20(日)22:10 AAS
すごいVBA発見w
外部リンク:esuafai.digi2.jp
167: 164 2013/10/20(日)22:56 AAS
フォームと連動させるのではなく、最初に実行させる時にStaticで保持し
2度目からオブジェクトが空ではないならデータを取りに行かずに
値渡しするようにして解決しました
168: 2013/10/21(月)00:11 AAS
なんか色々つっこみどろこ満載だな
まあ、動いてるならいいか
169: 2013/11/05(火)18:56 AAS
VBAでリモートのデータベースにトランザクション処理を開始して、コミット/ロールバックするのはわかりました。
これをマクロのアクションだけではできないですよね。
Vbaを嫌がる仲間が同一プロジェクト内にいるので。
170
(1): 2013/11/16(土)13:17 AAS
初心者ですみません。コンパイルってなんですか?
171: 2013/11/16(土)13:19 AAS
疲労困憊る
172: 2013/11/16(土)13:40 AAS
コンパイルダー・オン
173: 2013/11/16(土)15:59 AAS
昔広島にあったSTGや落ちゲーキャラゲー開発してた会社
174: 2013/11/16(土)17:51 AAS
あったなぁ
175
(1): 2013/11/16(土)18:27 AAS
脳みそコネコネの会社?なくなったのか?
176
(1): 2013/11/16(土)18:29 AAS
マジレスしとこう
>>170
ソースプログラムを実行可能形式に変換する事

簡単に言えば、お前が書いたプログラムを実行できるように準備する作業
ACCESSなら勝手にやってくれるから、意識する必要はない
177: 2013/11/16(土)19:25 AAS
>>175
1998年に無くなって、落ちゲー関係はセガが買い取った
178: 2013/11/16(土)21:35 AAS
>>176
なるほど。では、あえてコンパイルという作業をしなくてもOK
ってことですね。
あるがとうございます!
179: 2013/11/25(月)21:45 AAS
Accessの場合、ソースを中間コードに変換する作業をコンパイルと呼んでる。
その過程でソースにエラーがあるかどうかをチェックするから
実行時エラーとかの対策にはコンパイル通しておいた方が良いと思う。
180: 2013/11/26(火)02:50 AAS
実行時エラーってのは普通、コンパイルは通った後に発生するエラーの事を言うんだが
まあ、実行時にコンパイルエラー出るのもなんだし、事前にコンパイルしとけってのは同意するが
181
(2): 2014/01/31(金)12:48 AAS
Access独自の便利機能なのか分かりませんが
テキスト型のフィールドで日付が含まれる文を「日付順にソート」出来るのですが
これをVBAでやるにはどうしたら良いのでしょうか?

テキストに規則性が無いためにOrderByなどでは対応出来ません
テキストフィールドに入ってる文字列の例:

"第3四半期決算を1月10日に発表済み"
"第3四半期決算を2月10日"
省4
182: 2014/01/31(金)13:00 AAS
>>181
>テキストに規則性が無いためにOrderByなどでは対応出来ません

最初に書いたSQLが悪かったみたいで
これで出来ました。サーセン
183: 2014/01/31(金)15:57 AAS
辞書順と偶然一致しただけなんじゃないの
184: 2014/01/31(金)18:24 AAS
そもそも
>テキスト型のフィールドで日付が含まれる文を「日付順にソート」出来るの
これが怪しいんだが
どこでこんな事教えられたんだ
185: 2014/01/31(金)19:17 AAS
そうだな、俺も出来るとは思ってなかった
しかし、実際その通りに動くのだから仕方がないw

だから最初に「Access独自なのか」と思ってるのだが
これが出来るのは2013だからかもしれない
186: 2014/01/31(金)19:30 AAS
テキスト型だから、文字数順に並び替えてるのかと思って試してみた

"本決算を2月13日"、これを"本決算を1月13日"に書き換えて試すと
日付順に並び替わる>>181の例で言うと真ん中に来る

更に"第3四半期決算を2月10日"、これを"第2四半期決算を2月10日"
とやっても日付順に並び替わるので間違いない、>>181の例で言うと一番最初に来る

しかし、2月3日と02月03日表記では並び方が変わる
具体的にはMD表記郡の中でソートされ、MMDD表記郡の中でソートされる
187: 2014/01/31(金)19:54 AAS
分かった。ググったら出てきた
2007から出来るらしいけど、勝手に日付を解釈してるのではなく
正確にはテキスト部分を無視して数値順に並び替えてる、らしい
188: 2014/01/31(金)21:40 AAS
ということはデータを統一しないといけませんね
189: 2014/01/31(金)22:33 AAS
ソートの問題じゃなくて暗黙の型変換の問題な気はするけど
>テキスト部分を無視して数値順に並び替えてる
普通にソートすればテキストでソートするんだが
どうやったらそんなソートするんだ?
190: 2014/01/31(金)22:39 AAS
どんな型変換すればそうなるのか、逆に聞いてみたい
191
(2): 2014/02/01(土)13:42 AAS
あいまいな検索をしたい場合はLike *検索文字列* だけど
これだと、先頭文字列に外字が含まれてる場合は検索されない
のだけれど、回避方法はある?
192
(1): 2014/02/02(日)23:15 AAS
>>191
ちゃんと検索できるっぽいけど
先頭文字に外字ってのは、検索対象のテーブルデータなのか、Likeに指定する文字列なのか?
193
(1): 2014/02/03(月)09:59 AAS
>>192
先頭に含まれる外字は検索対象のテーブルデータです
文字列の中間に外字が含まれる場合は検索できるのに、
先頭だと検索されない減少が発生する…
194: 2014/02/03(月)16:26 AAS
>>193
かるく試したが再現しないな
OSかACCESSのバージョンによる問題か
単にお前の勘違いか
ACCESSでも限定された状況でのバグか
MDB(ACCDB)がぶっ壊れてるか

まあ、単に検索できないレコードに不正なデータが混じってるだけだと思うが
195: 191 2014/02/03(月)18:14 AAS
一応解決したっぽい

原因として、dbmagicにodbc経由でリンクテーブルに
したのがダメらしい
リンクテーブルをやめて、テーブルデータごとインポートしたら
通常通りに検索できた

みんなありがと
196: 2014/02/03(月)18:49 AAS
喰らえカスども、奥義「後出し特殊条件!」
197: 2014/02/03(月)18:58 AAS
生データインポ時に変換されただけとかは?
つまりODBC接続でもデータを相応しい変換しておけば解決できるのかも
198: 2014/02/03(月)22:22 AAS
そもそも外字サポートされてるのかどうかしらんが
たんにdbmagicで外字がバグってただけだろ
199
(2): 2014/02/08(土)21:20 AAS
SQLのReplace Intoに相当する物って有るんですか?
200
(1): 2014/02/10(月)01:08 AAS
フォームに伝票基本情報
サブフォームに詳細というか明細欄(だいたい30レコードくらい)配置して、
1売上1レコードになるようにしています。
サブフォームに、
内容 金額 委託 委託金
とフィールドがあり、委託したときに入力するですが、
(この委託の部分も、
省1
1-
あと 802 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.019s