[過去ログ] Access VBA 質問スレ Part1 (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
887: 2018/05/17(木)00:12 ID:e2hshpiX(1) AAS
呼び出しネストの限界がFunctionのほうが浅いってデメリットがあるはず
呼び出しに必要なスタック領域が違うから
昔だれかが実測してたな。まあ再帰でよっぽどのことやらんと問題ないんじゃね
SubをFunctionにして可読性が落ちるとか、それ関数の命名に問題がある気がするがな
888: 2018/05/17(木)08:14 ID:JDzFkPHQ(1) AAS
戻り値ある前提で組んでるんでしょ。
エラー処理等で単に関数が失敗か成功かを返すとか。
後で作ろうとしてたけどグダグダになって無しになっちゃうとか。
889: 2018/05/17(木)11:23 ID:eM4CBQj1(1/2) AAS
後でやろうとしてやめちゃうってのは非常に大変頻繁によくあることだからね。
890(1): 2018/05/17(木)12:28 ID:HY+Xmele(1/2) AAS
>>881
呼び出し側でいちいち call 書くの面倒だから
891: 2018/05/17(木)13:35 ID:vSfZvvAw(1/3) AAS
>>890
FunctionもSubもCallを書かなくても呼び出せすので、理由にならないと思います。
個人的には、Callが書いてないと唐突に見慣れない文が出現するので驚いちゃいます。馴れれば、労力の軽減になるのかな?
892(1): 2018/05/17(木)13:53 ID:HY+Xmele(2/2) AAS
call 書かないと () 付かないだろ
() 付かないから知らない文が出て来たと思ってしまう
() 付ければ関数だと判るが call 書かないといけないって話
893(1): 2018/05/17(木)15:12 ID:vSfZvvAw(2/3) AAS
>>892
済みません。よくわかりませんのでかみ砕いておしてもらえますか?
Callと括弧がペアで必要なのは理解しています。
もちろん、CALLなし、括弧なしでFunctionもSubも呼び出せるのも知っています。
両者の呼び出しの記法が全く同じで、唯一の例外が
lngSum=AddNumbers(10,20)
等の場合ということも知っています。
894: 2018/05/17(木)15:32 ID:vSfZvvAw(3/3) AAS
>>884
こんな感じですかね?
SUBは使わないのが基本?
外部リンク[php]:www.atmarkit.co.jp
↑でも結局解決していませんね。
895: 2018/05/17(木)17:22 ID:eM4CBQj1(2/2) AAS
つい全文読んじゃったよ
いろんな考えの人がいるんだね
896(1): 2018/05/19(土)13:29 ID:CLRFNNLm(1) AAS
>>893
えっcallなしで呼び出せるの?知らない事がたくさんあるなあ
897: 2018/05/19(土)13:36 ID:hVWJ7ayQ(1) AAS
>>896
英語の本にはちゃんと書いてあるんですよね。私はVBSの本で知りました。
898: 2018/05/23(水)19:16 ID:Au5e7VGg(1) AAS
僕の知り合いの知り合いができたパソコン一台でお金持ちになれるやり方
役に立つかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
BHZ67
899: 2018/05/24(木)10:37 ID:cPlRxlDn(1) AAS
BHZ67
900: 2018/05/24(木)21:31 ID:fKzQ9ZgX(1) AAS
ありがとう、僕も幸せになります
901: 2018/06/13(水)13:33 ID:jDAL4HLn(1) AAS
全モジュールをExportするコードがネットにあったので試したら、0TESTModuleという名前のモジュールでエラーになった。0TESTに書き換えたら通った。
予約語かと思ったけど、そんなリスト見つからない。モジュールに名前にModuleが含まれていると失敗するものなの?
ちなみに使ったコードは↓
外部リンク:stackoverflow.com
902(1): 2018/06/29(金)23:41 ID:Ur5E76UH(1) AAS
学生はaccessの勉強してないよね。既存の社内システムメンテナンスできる人を募集してるけど応募が無い。
accessなんて社会人になってから仕事の合間に覚える人がまれにいる、程度のものなのかな。
903(1): 2018/06/30(土)00:22 ID:2tzAZf7R(1) AAS
そもそもOfficeのPro版がほとんどの市販PCに載ってないから触れたことすらなかった
904: 2018/06/30(土)12:32 ID:QJJEkoJ9(1) AAS
大学はFileMakerすすめるからな
905: 2018/06/30(土)22:27 ID:XUZKNvMV(1) AAS
>>902
給料が安いから応募がないんじゃないの?
いくらで募集なのか知らないが、派遣の求人だと
社内システム作れる人だと時給2100円前後という印象だなAccessは
(高くても2300円くらいか)
だから社内システムメンテ出来る人は普通の会社には行かないのでは
そこまで出来るなら専門業者で働いた方がずっと稼げるだろう
906: 2018/06/30(土)23:30 ID:D2LAG+Ct(1) AAS
人にもよるだろ。
俺の印象では3000円弱ぐらいまではいく。
907: 2018/07/01(日)22:59 ID:zfW8OWzE(1) AAS
>>903
今は単品で15,000円位だから、コスパ良い開発環境だと思うのだが。
908: 2018/07/02(月)11:07 ID:kZ0RH16R(1) AAS
VBAで自動メンバー表示できるVBE以外のエディタってあるのかな?
909(1): 2018/07/04(水)06:14 ID:0ZnatSkO(1) AAS
VBS のエディタが使えないかな。
910: 2018/07/04(水)22:00 ID:gFgZc5FG(1) AAS
OH1
911: 2018/07/04(水)22:52 ID:SBPTcvBw(1) AAS
>>909
vbseditで試したけどダメだった
emacsで成功した人がいたのでWIN用emacsインスコしてみた
この後は面倒くさいからあしたやるemacsはいろいろ出来てすごいと言うことが少し分かったわ
912(1): 2018/07/04(水)23:17 ID:uOrTSuCX(1) AAS
VS CodeにVBA用の拡張があったはず
ふつうのVSにも探せばあるかもな
913(1): 2018/07/05(木)04:54 ID:/W/cgvJ/(1) AAS
VBE ではないエディタが欲しい場面とは?良かったら教えて。
914(1): 2018/07/05(木)10:21 ID:6LeJvB+6(1) AAS
>>912
VSCの奴は2つ入れたけど,オートコンプリートはできるけど,自動メンバー表示は出来ないですね.
>>913
一般的なエディタと比べると余りにもVBEが低機能だからですね.
たとえばコードフォールディングをしたいし,行番号も見たいけど,出来ないですからね.ズームが出来ないのも案外不便.
915: 2018/07/05(木)23:08 ID:pNcP8vSm(1) AAS
フォームでマウスホイールをコロコロしてレコードを移動させるプログラムを教えていただけませんか?
916: 2018/07/10(火)21:58 ID:U+UpIg0Q(1) AAS
ソース連結の単票フォームなら、何にもしなくてもホイールコロコロでページパタパタ出来るけど
そういうのとは違うのか 或いは、制作者が敢えて無効にしてるのを有効化したいのか
或いは、帳票フォームの上下・・ これもホイール効くか、、 シーンを限定してもわらないと
917(1): 2018/07/11(水)04:54 ID:UzCikUyf(1) AAS
>>914
913です。VBE良くできてるな便利だなと思って使ってました。もっと捗るエディタも有るんですね。
918: 2018/07/11(水)06:04 ID:ejJItOxX(1) AAS
>>917
ネット上にはVBEを賞賛する声は余り見ませんね。悪口は沢山見ます。
emacsをインスコしてみましたが、Windows7 64bitではダメでした。
emacsならやりたいことが全部出来るはずですが、lisp書けないから悲しいです。
919(1): 2018/07/22(日)19:25 ID:fTZbDOvh(1) AAS
質問です
UPDATEでテーブルを一斉更新する際に、
「Aさん」「Bさん」「Cさん」のようなデータを
繰り返しで連番のように入力させる手段は無いのでしょうか?
連番のような数値型は出来るようなのですが、
文字列で実現する方法が分からないです
目的は出勤している人間(5名程度)に
省4
920: 2018/07/23(月)00:04 ID:2H/uT7qC(1) AAS
一度連番を振ってその後に「連番 mod 3 = 0」をAさん、
「連番 mod 3 = 1」をBさん、連番 mod = 2」をCさん
っていうようにすれば出来なくもないか…
でもスマートじゃないですし、処理に時間がかかりそうですね
921(1): 2018/07/23(月)06:42 ID:Aoeea3bS(1) AAS
>>919
解答ではありません。
私ならexcelにエクスポートして手作業でautofill してインポート。またはvbaで一件ずつ読み書き。
Sqlでどうするかわかったら教えてください。
922(1): 2018/07/23(月)10:05 ID:86GO4HnW(1) AAS
連番(数値型)を繰り返し入力させる方法が分かるのなら、
1=Aさん、2=Bさん、…っていうテーブル用意しておいて、
連番振ったあと更新クエリで文字列を更新させるのは駄目ですか?
923: 2018/07/23(月)10:21 ID:eU1p7hr8(1) AAS
autoincrement
924: 2018/07/27(金)08:00 ID:G5saNUly(1) AAS
20人程度が1つのテーブルにそれぞれ10分間隔くらいでUPDATE INSERTをしているんですが、突然テーブルが開けなくなりました
「他者が開いています」というメッセージが出て開くことやコピーすら出来なくなりました
対策やこの症状が出た時の対処方法はないのでしょうか?
フロントエンドとしてユーザーの数だけUI用のAccessファイルを準備して、
バックエンドはテーブル1つだけのAccessファイルを置いています
925(1): 2018/07/27(金)12:49 ID:ASV/JfNN(1) AAS
そうなる前に、誰かがなんかのエラーを発してるはず
或いはエラーを殺しちゃってるかどうか
大概マズイことには口を噤むのが社畜の習い性
エラーにならないよう対策するか、エラー時に対策するか
コピーすらできないなら、サーバー側での対策として
バックアップ時に戻すか
そのファイルさえ救出出来たら修復できるんだろうけど
926(1): 2018/07/27(金)13:38 ID:rdFKIS0q(1) AAS
共有数の制限の気がするけど
そのバックエンドのアクセスファイルはどこでどうやって共有してるんだよ
927: 2018/07/27(金)17:29 ID:hf+c8Fmp(1/2) AAS
919です
返答が遅くなってしまい申し訳ありません
>>921
解決しました
元々テーブルに連番が振ってあったので、それを利用して
sqlのswitch文とmodを使ってます
リストボックスで選択した担当者を配列に格納して
省9
928: 2018/07/27(金)17:35 ID:hf+c8Fmp(2/2) AAS
>>925
先日は事前に取っておいたバックアップまでロールバックして対処しました
未だにエラーの原因が分からないので
不具合が起きた時の対策とバックアップ頻度を上げるような
業務フロー(タイマー関数含む)を追加しようと思います
開けなくなったファイルは日を跨いだら開けるようになりました
恐らく誰かが気づかずにバックグラウンド掴んでる状態だったんだと思います
省8
929(1): 2018/08/11(土)16:51 ID:/3QviRkj(1/2) AAS
質問です。
分割フォームの
分割フォームデータシートプロパティを
VBAから操作できる方法がありますでしょうか?
ご教授お願い致します。
930(1): 2018/08/11(土)18:04 ID:MwiIaP9n(1) AAS
具体的なプロパティもわからんしお休みなのでパソコンも手元にないけど検索したらsplitformsize のvba コードがあるから何らかの操作は出来るんでないの?お盆モードの適当コメントですまぬ。
931: 929 2018/08/11(土)18:45 ID:/3QviRkj(2/2) AAS
>>930さん
ありがとうございます!
splitform vbaで調べていたら見つかりました!!
うれしいです!
Private Sub コマンド11_Click()
If Forms("test").SplitFormDatasheet = acDatasheetReadOnly Then
Forms("test").SplitFormDatasheet = acDatasheetAllowEdits
省7
932: 2018/08/23(木)22:05 ID:VOAIsull(1/2) AAS
サイズの限界まで巨大化しているフォームを改造して、様々なコントロール類をタブコントロール上に配置しようと考えています。
元のフォーム上のコントロール類をコピーしてタブコントロール上にペーストしたまでは良かったのですが、イベントプロシジャーがごっそり抜け落ちています。コマンドボタンを押してもなにも始まらない状態です。
イベントプロシジャーを保持したままコントロールをコピペする方法はありますか?
933(1): 2018/08/23(木)22:21 ID:VOAIsull(2/2) AAS
解決しました。
外部リンク:bytes.com
934: 2018/08/24(金)06:25 ID:zBeCnEZ1(1) AAS
>>933
良かったね。
俺はVBA コードを頑張ってコピーしてるのでよかったら解説下さい。えーごわからないので。翻訳機能?あの人たちとは話が合わん!
935: 2018/08/24(金)09:58 ID:IIPiSmN7(1) AAS
Accessの本はいろいろ買ったけど、良書だなあと感心したのはほとんどが未翻訳の洋書でした。
谷尻、緒方、葛西も和書としては悪くないのですが、洋書と比較すれば月とスッポンです。
技術書の英語は辞書とgoogle翻訳でだいたいなんとかなりますよ。
たまに文学的表現があってイラッとしますけど、だいたいが簡単明瞭です。
936: 2018/08/24(金)10:46 ID:jVqNqoKW(1) AAS
すいません質問です。オフィス365です。
手動で空のサブレポートをレポートに配置しました。これをVbaコード でコピーする方法を教えてくださいませ。
937(1): 2018/08/30(木)13:16 ID:onaqxfsR(1/2) AAS
すみません、質問させてください。
ExcelからAccessの特定のフォーム
を閉じるとき、
DoCmd.Close acForm, "フォーム名"
で入れると、おそらくacFormがAccessVBAの引数のためか、
エラーが出てしまいます。
何か解決方法があればご教授よろしくお願いします。
938(1): 2018/08/30(木)13:20 ID:S/vwwZyF(1) AAS
アプリが違うからOLEとかActiveXObject使うんでは
939: 2018/08/30(木)14:29 ID:4drhoSMA(1) AAS
>>937
acForm=2なので、acFormじゃなく直接2を指定してみると上手く行くかも
DoCmd.Close 2, "フォーム名"
↑でやってみて
940: 2018/08/30(木)16:02 ID:onaqxfsR(2/2) AAS
>>938さん、939さん
ありがとうございます。
939さんの方法でいけました。
ありがとうございますm(_ _)m
番号で指定する方法があったのですね。
感謝です。
941: 2018/08/30(木)23:00 ID:NGm4WU4A(1) AAS
Access.AcObjectType.acForm が 2
942(4): 2018/09/13(木)01:52 ID:iAlG4Fvk(1) AAS
アホな質問ですまん。
クエリの中でクエリを複数使うクエリを作成したんだけど、これをSQLに書き直すときにエイリアスを使いたいんだけど、クエリに対するエイリアスは使えるのかな?テーブルだけかな?
実験した感じではダメそうなんだけど、どうですか?
943: 2018/09/13(木)03:14 ID:liq2Qruq(1/2) AAS
>>942
普通に使えるはずだが
AS付けてないとか
944: 2018/09/13(木)03:15 ID:liq2Qruq(2/2) AAS
DAO経由じゃないとだめだったかも
945: 2018/09/13(木)12:56 ID:C2gZ+hmS(1/2) AAS
>>942
普通に出来るはずだぞ
どういう状況でダメになってるんだ?
946: 2018/09/13(木)13:07 ID:C2gZ+hmS(2/2) AAS
>>942
サブクエリの話だよな?
自作ツールで確認したがASで普通にできてたぞ
947(1): 2018/09/14(金)08:17 ID:JMy0VfN7(1/2) AAS
たぶん、サブクエリじゃなくて作成済みのクエリをSQL内部のFROM句やJOIN句にテーブルのように使う時にエイリアスを使いたいという話だと思うんだが、それでも普通に使えると思う。
948: 942 2018/09/14(金)11:04 ID:cjIZJ/+q(1/6) AAS
みんな、ごめん。使えました。
おいらがSQLビューで書くときに、どっか間違えたみたい。
クエリのエイリアスも使えるし、サブクエリでネストも出来るし、accessって凄いね。糞長いSQLを書きたくなるね。
問題は余計な括弧がいっぱいくっつくところだよね。
949: 2018/09/14(金)12:54 ID:cjIZJ/+q(2/6) AAS
またまたくだらない質問です.
UPDATEで苦労していますが,外部リンク:www.ipentec.com に書いてある
update working set value=price from products where working.name = products.name
だとエラーが出ます.試行錯誤して成功したのは
UPDATE working, products SET working.[value] = [products].[price]
WHERE (((working.name)=[products].[name]));
でした.UPDATEの述語に参照するだけのproductテーブルが書いてあるのが不可解ですね.
省1
950(1): 2018/09/14(金)13:41 ID:5xDSXwp0(1) AAS
fromが無いから
951(1): 2018/09/14(金)15:43 ID:cjIZJ/+q(3/6) AAS
>>950
FROMを書きました.下のようにしました.でも,演算子がありませんと怒られます.
UPDATE [working],[products]
SET [working].[value] = [products].[price]
FROM [products]
WHERE ((([working].[name])=[products].[name]));
952: 2018/09/14(金)15:43 ID:cjIZJ/+q(4/6) AAS
これも同じように怒られます.
UPDATE [working]
SET [working].[value] = [products].[price]
FROM [products]
WHERE ((([working].[name])=[products].[name]));
953(1): 2018/09/14(金)18:33 ID:JMy0VfN7(2/2) AAS
それだと[products].[price]の後が何だか分からん。
[products].[price]を求めるSQLをそのまま書くかJOIN使った方が良い。
UPDATE [working]
SET [working].[value] = (SELECT [products].[price]
FROM [products]
WHERE ((([working].[name])=[products].[name])));
UPDATE [working]
省4
954(2): 2018/09/14(金)20:41 ID:cjIZJ/+q(5/6) AAS
>>953
上のは,更新可能なクエリであることが必要です と怒られました.
下のは成功です.ありがとうございます.
FROMを記載したコードでは出来ないというのが興味深いですね.
クエリーと一般のSQLではコードを処理する方法がかが違うんですかね?
聞きかじりですが,オプティマイザとか実行計画とか言う奴ですかね?
次はクエリを参照するUPDATEを書かないといけないのですが,テーブルならOKでクエリでは怒られるんですよね.
省2
955: 2018/09/14(金)21:06 ID:wdFP/Mir(1/2) AAS
>>951
横入だがAccessがUPDATEでのFROMを
サポートしていないという意味での「FROMがないから」
じゃないの?
956(1): 2018/09/14(金)21:11 ID:wdFP/Mir(2/2) AAS
>>954
確かAccessはUPDATEでFROMは使えないぞ
957: 2018/09/14(金)21:32 ID:cjIZJ/+q(6/6) AAS
>>956
マジすか?ありがとうございます.
SQLって方言が多いんですね.
958: 2018/09/15(土)02:34 ID:7Yaecm93(1) AAS
UPDATE文は特に方言が多いんだよ
959: 2018/09/15(土)11:35 ID:AVfR6YnT(1) AAS
>>954
更新クエリに設定しろ
960: 2018/09/16(日)09:41 ID:o5IUt/R9(1) AAS
昔はオラクルとかに直接更新クエリ実行しようとして固まってたなあ、、、
ハード性能上がった今でも固まるのかね?
961: 2018/09/16(日)16:10 ID:qqKBC7cw(1) AAS
リンクテーブルに対して何かするのを「直接」とは言わないからな?
962: 2018/09/16(日)18:15 ID:HF0YmRsW(1) AAS
アスペですね
963(1): 2018/09/16(日)19:05 ID:8jdJAOdP(1/2) AAS
それ以前に、ハード性能で固まったことなんてないんだが
単に遅いだけで固まったって言ってるのかね
964(2): 2018/09/16(日)19:27 ID:yPlmt9/8(1) AAS
>>963
初代ペンティアムマシンでAccess97で動かした事無い人かな
965: 2018/09/16(日)20:39 ID:fj0Djq38(1) AAS
>>964
それは何自慢?俺は20年前からACCESS やってるベテランだぞすごいだろう?
966: 2018/09/16(日)22:05 ID:8jdJAOdP(2/2) AAS
>>964
だからそれは単に遅いだけだろうと言ってるんだが
ついでに言えば、ACCESSで外部DBMS使うときに一番気を付けるべきは回線の速さだがな
その環境でも、100MのLANならそれなりに快適だったわ
967: 2018/09/17(月)18:07 ID:l9KryutO(1) AAS
486DXでAccess95とか動いたっけ
上下前次1-新書関写板覧索設栞歴
あと 35 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.024s