Access総合相談所 29
■ このスレッドは過去ログ倉庫に格納されています
ACCESSに関する質問はこちらへ ▼━ 質問のしかた ━━━━━━━━━━━━━━━━━━━━ ★ 質問内容は具体的に書いてください。 業務上の守秘義務も大事ですが、貴方の所属組織を特定できるほど、特異な業務・システムは滅多にありません。 作りたいものの内容を隠しすぎないようにし、列名、データ値を適当に変更して例示するなどしましょう。 ★ 事前にGoogle等で調べられる範囲は調べてください。 ★ 完全初心者はまず、新規作成テンプレから「NorthWind」を開いて、一通り触ってみてください。ACCESSの概念を理解する もっとも簡単な方法です。 ★ お金の管理でシステム設計ミスが会社経営に重大な支障が予見される場合は、パッケージソフトに誘導する場合があります。 格安なソフトもあるので設計に取りかかってから悩む前に、市場調査も行なってください。 ★ アドバイスを貰ったら、必ず経過・結果の報告をして下さい。 ギブアンドテイクで情報を共有しましょう。 ▼━初心者用質問テンプレ ━━━━━━━━━━━━━━━━━ 【Windows】 7, 8,10 【Access】 365,2013,2016,2019 【作りたいものの業務分野】 販売管理,買掛管理,営業予算管理,営業実績管理,生産管理, 財務管理,労務管理,学術研究統計,文字格納を主体としたDB,その他() 【あなたのスキル】 LV1:完全初心者, LV2:ACCESSの基本要素(テーブルやクエリーなど)の役割を知っている LV3:VBAが打てる 【どのオブジェクトに関する質問か】 テーブル,クエリー,フォーム,レポート,サブフォーム(サブレポート),リレーション,VBA 【やりたいこと】 (質問によっては各テーブル名と列名を例示) (クエリーの場合は、左上の「表示」を押し”SQLビュー”に変更して表示される”SQL文”を貼り付けると回答者がわかりやすい) (得たい出力結果や挙動) 【エラーメッセージに関する質問】 ・エラーメッセージの内容 ・windowsは32bit版か64bit版か 前スレ Access総合相談所 28 https://mevius.5ch.net/test/read.cgi/bsoft/1535638568/
>>239 はい、以前Access95や97の時代にDate()で #Nameエラーが多発したのでそれ以来Now()を使い続けています。 ちなみに今回のソースをDate()に変えてもダメでした。 >>241 試し方が、結構access使いなれてる感じですね。 軽くググったら これは釈迦に説法だけど、フィールド名、ユーザー定義関数に まんまdate nowと名付けたらエラー、 あとvb6ランタイムの mscomctr.dll msctrctr2.dllというワードが出てきた。 >>240 それ、どっかに書いてあったで、hatenaなんとかかな hatenaのはパスワードかけるとそのファイル内の削除クエリが遅くなるやつじゃね? それならMicrosoft Security Essentialsが原因とか書いてたが... >>240 はMicrosoft Security Essentials関係なく遅くなる。 どちらにせよaccdbの暗号化(パスワード化)は色々と問題ありそうだ >>242 ありがとうございます。 それは、参照設定で参照不可が発生している問題ですね その辺も全部チェックしましたが問題ありません。 結局2010でaccde化して配布することにしました。 Office2010で使ってましてQRコード使いたくてAccessだけ2016にしてたのですが 20日のアップデートでQRコード使えなくなりました 2016だけ再インスコで回避できたのですが 参照設定のBarCode Controlが14.0のままで レポートのActiveXコントロールが16.0になってる辺りを疑ってるのですが 解決策ご存じの方おられませんでしょうか Office2019personalがインストールされた環境にoffce365access runtimeはインストール出来ますか? >>248 可能 ただしExcelの参照設定をいじる必要あるかも >>248 確か、office2013が入ってるところに、access2016runtime入れるな って注意書きがあったけど、 特に問題は起きていない。 ただ、VBAコード書いてruntimeに配布するときは、 on errorなんちゃらの処理をちゃんと書かないと、バッサリ落ちるので ユーザーである社内の人間から白い目で見られるから、 面倒くさいんだよね。 製品版だと問題行で一時停止するんだけど。 わかってるつもりだが、いまだに忘れがち。 ナビゲーション ウィンドウをF11キーで表示した後、 再度F11キーで最小化されますが、 最小化ではなく非表示にする方法はないでしょうか? VBA・マクロ以外の方法が見つかりません。 ACCESS2013だけど、クエリで選択した複数のレコードを1件のデータで管理したい場合どうすればいいですか? 例えば、在庫表の[ミカン、リンゴ、ブドウ]の3レコードを選択クエリで抽出して、これを1月16日にA宅に出荷したとします。 普通は1レコード単位でフォームに表示したりして管理すると思いますが、選択クエリの時点で3レコードに分かれているので、後で見ると単票フォームで表示できないので管理しにくくなってしまいます。 何か良いアイデアありますか? >>252 フォームのレイアウトを表形式にして、フォームのプロパティの既定のビューを帳票フォームに変更すればいい >>253 有難うございます。 メインフォームに出荷日や出荷先を入力して、サブフォームに帳票フォームを入れようと思ったのですが、メインフォームとサブフォームのレコードに同じ番号(連番)を振ることって可能ですか? 例えば [メインフォーム]1月17日 A宅に出荷 ID1 [サブフォーム]リンゴ ID1 ミカン ID1 メインフォーム]1月18日 B宅に出荷 ID2 [サブフォーム]リンゴ ID2 ミカン ID2 のように、同じIDでリレーションシップの1対多で管理するような感じにしたいです。 メインフォームのIDはオートナンバーで、サブフォームのIDは=メインフォーム!IDのような感じに出来ますか? よろしくお願いします。 SetFocus使うとOpenイベントの途中でLoadイベントが発生する Private Sub Form_Open(Cancel As Integer) Debug.Print "Form_Open Start" Me.SetFocus Debug.Print "Form_Open End" End Sub Private Sub Form_Load() Debug.Print "Form_Load" End Sub Private Sub Form_Activate() Debug.Print "Form_Activate" End Sub 誰にも言うなよ >>254 連鎖更新で同期は可能だけどリレーションシップまで理解してるなら分かるよね。 >>256 こういう挙動とかサイレント修正されると困る事ってあるよね 2003の頃と2010以降でレポート開く時のWhereconditionの違いとか >>258 マクロなら動くけどVBAで組んだイベントプロシージャが動かなくなったことは良くある あと参照設定のバージョン違いで同じコマンドやメソッドの動きが変わるとかもあったな いずれも迷惑なこっちゃで >>259 ヘルプに無い挙動っていうと、単項式の評価は0以外はTRUEなんだけど、 たぶんそれ明示されていないんだよね。それを使った処理は危険だな きちんと比較演算子で評価させよう 普通に開いたフォームと New Form_フォーム名で開いたフォーム 識別方法ってある? Openイベントで処理変えたいんだわ Visibleが使えるかと思ったがダメだった ごめん テーブルやグローバル変数にメモるの以外で です 「白いネコでも黒いネコでもネズミを取ってくるのがいいネコだ」@ケ小平 よって、共産党としてはフォームを開いた後に区別する方法は用意していない 本社と支社間のように離れた場所と共有する場合に、簡単で無料でする方法ってある? テーブルデータ(バックエンド)がwebやクラウドにあるイメージ。 最大でも3〜4人しか同時に使わない。 この前Win10にアップグレードしたんだけど VBエディターで縦スクロールすると 分割ウィンドウにした時のような横線が入って 画面が乱れるときあるの俺だけ? スクロールバーを上に向かって動かすとなりやすい >>268 別にそういうふうにならないが グラフィックドライバからみの問題な気がする GPUとドライバのバージョンは? >>269 Intel HD Graphics 2000 15.28.24.64.4229 (9.17.10.4229) 分割ウィンドウというより スクロールバーを上に向かって動かすと ツールバー下の オブジェクトのプロパティ選択コンボが 分身となって現れ下へ向かって動く。 スクロールバーを何度か大きく動かすと消える。 あと1つのIfにEnd Ifが2行続いてるので あれっ?と思ってその行クリックすると1行になる 質問よろしいでしょうか フォームでマイクロソフトアカウントの情報(表示名やメールアドレス)を取得することは可能ですか? >>271 環境変数 USERDOMAIN かUSERNAMEをEnviron関数で取得でいけるかと >>271 メールアドレスって環境変数には無いなあ。 そもそもメーラーは何使ってるの? >>271 レジストリのどっかに書いてあるんじゃね? >>271 です 皆様ありがとうございます Environ関数についてですが、ユーザーネームを取得は行ったのですが PC名の取得になってしまいます 不特定多数の人が開くACCESSでいちいち名前を選択してもらうより マイクロソフトアカウントで判別して名前を設定しようとしたんですが なかなか難しいですね… >>273 メーラーはoutlookを使用しています >>274 レジストリの情報を読み出せるんですね 探してみます accessでテーブル設計の参考になるような本やサイトを教えていただけませんか? 仕事でaccessを使わなければならなそうで、勉強がてら自分で趣味のデータベース作ったのですが、テーブル設計がエクセル的でダメと言われました。 >>276 エクセル的ってのは曖昧な表現だけど、おそらくは正規化してないってことだと思うよ。 端的な言い方すると、Excelでテーブルらしきものを作って、それをコピペして Accessがエラーなくテーブルとして取り込めるかどうかで判断しても良い。 エラーになったら、その原因を調べて直すでも、学習になるかも とはいえ、エラーでなければ十分かというと違うんだけどね。 正規化という作業が待っているのです。 正規化というのは、単純化です。 複雑にしたければ、単純なテーブルどうしをまとめるクエリを作るのですね。 そうすることで、新たな機能と追加したりするもの、元が単純だから別のフィールドを追加したり 別のテーブルを追加したりして、既存の仕組みに影響を与えない形で拡張ができるのです。 学習に向くのは https://www.accessdbstudy.net/entry/20140930/p1 ですかね。 魔法使いの開発工房さんも参考になりますよ。 >>279 ありがとうございます。 まさにご指摘の通りです。リンク先の商品1、商品2・・・と全く同じことをやってしまいました。 正規化の勉強してみます。また分からなかったら質問させて頂きます。 仕事の方は前任者が作ったデータベースがあるためクエリで簡単な抽出はできたのですが、前任者がこの世にいないのでいずれ1から作らないとならないと思い趣味の方で作成した次第です。 これ見てふと思ったけど、顧客や取引先情報で住所・電話番号なんか ごく普通に登録するけど、相手によっては住所や電話番号が空欄になる こともあるのなら、これもやっぱり正規化すべき? 電話番号なんか特に空欄だけじゃなく複数あったりするけど 顧客マスタで住所や電話番号のフィールドが複数あるのはDB設計では一般的だぞ 問題は際限なく住所や電話番号が増えていくようなシナリオが想定される場合で、大体の場合、顧客の支社や工場の情報とか担当者個人の情報とかが追加されていくパターン そういうのはChildでまとめるなりしてエンティティの階層を整理しないと駄目 >>282 サンクス 過去のDBを引き継いで使っているけど、顧客店舗テーブル眺めてると 電話番号の項目が3つあって、そのうち2、3は大体空欄なのが気になってたのです たとえば、顧客名簿テーブルが 顧客名簿ID(主キー)氏名 住所1 住所2 住所3 1 あああ 東京 千葉 埼玉 2 いいい 群馬 3 ううう 山梨 栃木 というフィールド構成になってたとします。 これを正規化して次のように2つのテーブルにしても良いかと 顧客名簿ID(主キー) 氏名 1 あああ 2 いいい 3 ううう 住所ID(主キー) 住所 顧客名簿ID 1 東京 1 2 千葉 1 3 埼玉 1 4 群馬 2 5 山梨 3 6 栃木 3 1テーブル A B C D 2テーブル ○ × △ 3テーブル A ○ 100 B × 100 4テーブル D ○ 200 E △ 200 これを A ○ 100 B ○ C ○ D ○ 200 A × 100 B × E × ってクエリで結合させてポンと表示できないですか? すみません、>>285 ですがユニオンクエリがそのものでして無事解決しました フォームやレポートでラベルとかを作ると ラベル××って連番つくじゃないですか あの連番こっちで操作できないんですかね 間違えて作成して元に戻すをやっても 連番は進んでるし… あれは便宜上自動で付けられている名前で そのまま使用するのではなく設定し直すのが本筋なのです >>287 ラベル自体を操作する 例えば.visibleで表示 非表示を制御する Circleで丸囲みする といった理由が無いなら放置してええかと ありがとうございます。 レポートで10個の項目が複数あって それぞれクエリから値を設定していくんですけど VBAを書くよりなにより、沢山あるテキストボックスの名前を変えてくのが苦痛で苦痛で… テキストボックスの名前を読み込み時に変えようかなとも思ったんですけど >>290 >10個の項目が複数 ??? 意味が分かりません。 VBAでtextbox.nameプロパティを一括変更できるでしょ? 単票レポートですか? 帳票レポートですか? >>290 何をしようとしてるのか、そんなケースがあるのか思い浮かばない。 プロが作った売上ソフトの設計見てると、テーブルの時点ではフィールド名を英数字のコードネーム状にして 割り付けテーブルを別に持っているようだけどね。 その場合、accesdならコントロール名はその汎用コードネームにして、開くときにVBAぶん回し、 関連付けたラベルの標題値を変えさせればいいんじゃないのかな。 コードソースはめんどくさいから書かないけど 全てのラベルコントロールを対象としたループ 紐付けテーブルの読み込み準備 紐付けテーブルに格納されてるレコード中のコードネームと、 [コードネーム]&"_ラベル"がマッチするなら紐付け名に変更して みたいな感じ。 追記 最近はグローバル化でウェブサイトとかゲームの字幕が多言語対応してるでしょ。 どうやって実現してるでしょう、とほぼ同じ設計思想でいいと思う。 webサイトなら、たいてい裏でmysqlなどを動かしてて htmlの要素にはidを振り、割り付け先idと、選択言語でマッチしたvalueを埋め込んでることが多い。 OfficeH&B2019にOffice365AccessRuntimeを入れたら、Officeが無断で削除されたよ!気をつけてね! >>291-292 説明が下手くそですみません 複数のクエリから複数のランキングを一つの帳票で作るのが目的でした 01位 誰々 数値 ・ ・ ・ 10位 誰々 数値 みたいなのが複数あるみたいなイメージですね フォーム読み込み時にVBAで最初に一括でtextbox.nameで名前を変えるのが一番楽そうですね >>296 に、してもよ、レポートのグループ化とかそういうの使ってる? 私だったら、queryの段階で ランキングタイトル:なんとかのやつ、誰々:誰々データ列、合計:sum(データ列) といった形式でごく少量の列数に縛ったやつを作って union allで束ねたものをデータソースにするけど。 B4とかA3に、「壁新聞みたいに自由に綺麗にレイアウトしたいの」 というニーズは、知らん。 >>297 ユニオンオールで一つのクエリにしちゃうというのは全く発想になかったです! 確かにそうすると楽になる気がする… ありがとうございます 既存Excelファイルをaccessに置き換えるよう指示があり、DB初心者ですがテーブルの設計をしています。 顧客テーブルを第三正規型で構築しようとしたのですが、カラムが100近くになってしまいました。 カラムが増えすぎた理由は、1つの顧客テーブルを飲食,レジャー,不動産など複数のサービスで共用しており 全てのサービスで共通する"氏名""住所"など以外に、各サービス独自の項目(サービス毎の顧客の嗜好など)が顧客マスタに1纏めになっているためです。 第三正規型で表現できている以上、カラムが長大だからといって無理にテーブルを分けなくても問題ないのでしょうか。 素人故、根本的な考え方が間違っているかもしれませんが、アドバイスをいただければと思います。 よろしくお願いします。 自身が多いと思うのであれば素直にテーブル分割すればよろしいかと 挙げられている項目を一まとめに扱う事が多いのであれば分割しない方が開発は楽でしょう ただフィールド数が多いとパフォーマンスに影響も出ます 正規化はシステムや顧客によって答えが変わって来ます 100%の分け方というものはないです 頑張ってください 第三正規形って初めて知った。 コングロマリット的展開をされてるのによく EXCEL一本でやってましたな。 グループ企業全体のCRMを果たして素人コンピューティングで 実現できるのか、というのは難しいところで。 >>293 これからまさにこの環境を構築する必要があるんだけど Access2019のランタイムって無いから、365用のランタイムになるよね? プレインストールのOffice2019H&Bに開発用のAccess2019インストしたら 3台中2台Officeが消えて難儀した。マイクロソフトに聞いても「偶にあります」 との事だった。Office再インストで直ったけれども。 開発が終わったら、上記環境にランタイムで稼働させる予定だから面倒だ・・・ 数年前からグリッと方向転換してるのが良い面もあり弊害も起こし な状況なのかな マシン本体の性能もいよいよ向上して、Core i もすでに第十世代bitも64が普通になってメモリも16GBとか当たり前 インスコもローカルアカウントは不可に成りつつありMSアカウント必須とかに流れが変化して 今回Win7代替でのPC入れ替えが集中したけど、制限時間内に台数こなそうとインスコ作業を集中してやったケースで 出易かったのもあるかも知れない インスコ時はもちろんネット接続必須な状況だし、したらしたで勝手にアプデが 走ったり走らなかったり プレインスコのOfficeをセットアップしてからAccess単体をインスコってケースでは 日を改めた方が安定するかもしらん 自分用に新規購入したPCを操作してみてそんな気がした 気がしただけだけど 余談だが、従来32bitで開発・運用してたもので VBA内に Declare 使ってると、64bitに乗せ換えた時コケる Declare PtrSafe としないとダメだ ってのを ↓ここで教えてもらった https://access-support.jp/trouble/access-error-64bit/ >>299 例示された項目を見て、テーブルを分けろと言いたくなりますが、Accessでやれというお達しなら 顧客に関する情報は全部顧客マスタへ、という方法もいいかも。 コンピューターが非力だった時代はそうしていました。 教科書を真に受けてテープルを分けまくると「クエリーが複雑すぎます」エラーで悩むことになると思うんですよ。 ExcelのままよりはいいのでAccess版をプロトタイプにして巨大な顧客マスタで作り、SQL Serverに移行するとよい。 Transact-SQLは楽やで仕事がはかどる。 第三正規形とやらの意味は調べていない。第六文明人。 相談です。 レポートのテキストボックス(データソースは、長いテキスト型です)について (基本的には、テキストボックス内1行にはおさまらす複数行(物理行)になります) 1レコードを1ページにおさめないといけないため、テキストボックスの高さを制限しつつ、データが切れないように文字サイズを縮小したいです。例えば下記のような方法で。 1)テキストボックスには、印刷時拡張を設定し、 ボックスがある高さ以上になるときは、文字サイズを縮小する 2)テキストボックスの高さをあらかじめ限界に設定の上、印刷縮小を設定し ボックスがこの高さ以上になるときは、文字サイズを縮小する いろいろ調べたのですが、ACCESSのテキストボックスにはlinecountプロパティはないようなので何か妙案はないでしょうか? ちなみにフォントはプロポーショナルフォントを使うため、文字数をカウントする方法は使えません。 >>306 小型ラベルを作るために、それ系の情報集めて実装したけど かなり面倒くさいよ。googleで「twip」で検索。 今、見直したらQiitaの記事が秀逸。 文字列をtwip長に変換かけて、はみ出すようなら(限界値は自分で調査) フォントサイズを1段階 落として、もう一回twip長を測って、はみ出すようなら以下同。 >>307 まさに、ラベルを作っています。 1cm=576twipというのは、分かっていたのですが、複数行に渡る場合の処理が解決できません。 1行のテキストボックスなら、textwidthプロパティで、幅を取得できるのでうまくできるのですが。 テキスト全体の幅/テキストボックスの幅では、禁則処理の関係もあり、正確な行数が出せません。 1番簡単なのはワードの差し込み印刷使うことかも なんでもアクセスで済ませようとするとものすごく大変だけどデータ作成ソフトとして使って最後の処理や加工をワードやエクセルに任せれば結構簡単に色んな事が出来るよ >>309 他ソフトと連携する際に、選択した特定のレコードだけ差し込むとかできるといいのですが、自分のスキルではなかなか難しいです。 パートのおばちゃんがラベルを印刷するのてファイルを選択したりとか難しいんです。 >>308 腕のある方の記事を参考にしてwindowsAPI呼び出す方法を 使ってるけど、日本語フォントのtwip計算は完璧にはいかないよ。 基準級数を、何ポイント基点で、何ポイントまで下げてもいいのか 決めればいいんじゃない? いくらなんでも、5ポイントというのは やり過ぎで、7〜12が実用範囲だと思う。5、6パターンしか考え なくていいわけよ。 それぞれのフォントサイズの時に何行入るのか確かめて おいて、(テキストボックスのtwip-若干の余裕値)X行数が 文字が最大入る長さ。 文字列のtwipがそれをはみ出すなら、ポイント1ずつ下げては評価 を繰り返す。 改行chr(13)は今は考慮しないことにする。 みなさん、いろいろありがとうございます。 >311 のやり方でやるのが現実的のようですね。 同じレポートでもう1点、悩みがありましてお知恵を拝借したく・・ 複数行のテキストボックスの文字配置なんですが、左揃えにすると右端がガタガタになってしまい、非常に見栄えが悪いのです。かといって均等割付にすると、最終行の文字数が少ないときに間延びしてしまいます。 ACCESSには、wordのあるような両端揃えはないようなのですが、何か他のうまい方法で同様のことは実現できないでしょうか? >>312 単純には後ろにスペース入れたら? しかし、折り返しの自動処理(仕様)は意図した通りにならない。 均等割り付けはタイトルなど、一行のごく短文を想定したもの。 Accessはあくまで「まかない飯ソフト」 だ。レポートを客に渡したり、行頭に句読点がきたら怒り狂う上司を想定していない。 やりたければ 1 wordへの差し込み (エクスポートはどこまでのものか知らん) 2 csvにしたあと、ラベルマイティ的なやつに読ませる 3 htmlを生成してcssをあてる ACCESS runtime 2010 のダウンロードリンクがリンク切れになっているぞ プロジェクトファイル(adp,ade)が開ける最後のバージョンだった。 >>312 プロポーショナルフォントだと打つ手はありません。 等幅フォントなら左揃えにすれば希望のとおりの文字配置になります。 New Access features coming your way! Never discount looking at the What’s New section in Microsoft Office to get a first hand look at goodies coming your way! A fellow MVP pointed out to me how you can see new features by going to backstage, (File menu), clicking on Account and then What’s New. Scroll down until you see new features in Access. Accessで、ニューフィーチャーズは暫く見ていないような。 昨年、タブの見た目が変わったくらいか。 ネイティブでjsonとれるやつ、付けてくれ。 あと組み込みブラウザのエンジン、どうするつもりなんだ。 やはりOfficeH&B2019の環境にAccess365用ランタイムをインストしたら Officeの方が消えた。ちなみにランタイムのバージョンはなぜか2016になっていた。 プレインストOfficeの再インスト用のアドレスを忘れたので、マイクロソフトのサポートに 聞くついでにAccess2019ランタイムのことを聞いたら、親切な人だったのか一応教えてくれた。 ・Accessランタイムについては無料ソフトとなるので、基本的にサポートはできない ・H&B2019の環境で共存できるAccessランタイムのバージョンは2013まで との事だったので、2013ランタイムを入れたらあっさり動いたので報告しておくよ。 >>318 会社は、ほとんどの端末がバンドル版の2013 ACCESS なしで、2013runtimeか2016runtimeを入れても、 特に問題は起きていない。 今後、法人端末はバンドルにしないで、365運用にしたほうが 省力化できるように思う。 Officeで言えば三世代前? もしかしてCPUは四世代も五世代も前のを例えにしてる? 去年のWin7代替で大慌てで入れ替えたのがそのスペックだとしたら、売れ残り掴まされてる? Office2019とAccess Runtime 365 なり2019なりのトラブルは去年の夏には話題に成ってたけど ShiftキーとかCtrlキーの起動オプション邪魔くさいな。 フォーカス無しで起動しても認識してしまうから タスクスケジューラーで登録して使うと 知らないうちにキー押してて渋滞してしまう。 Access VBAを勉強しようと思うんだけど、 DL版と普通のソフト版は何であんなに値段が違うの? DL版て何か怖いの? >>322 電子の方が安いんでしょ。工賃、運賃、仲卸がかからないもの。 で、一番安いのは古本だったりする。 Accessなんざ見た目は2013以降、 実装機能は97から何一つ変わってないので、どのバージョンの参考本を買っても遜色はない。 Access2000では大々的にActiveX Data Objectsの使用を推奨してたが、 2013から「やっぱdaoをお薦めします」に戻ったので、そこだけ予め理解していればよい。 >>323 昔Access95の頃に少し勉強したけど中途半端で終わり、 本職が忙しくなって、ちょうど今から暇な時期になるんで、 自分で販売管理ソフトを作りたいなと思いまして。 >>323 Access Projectの事も、たまには思い出して下さい… いや、マジであれ廃止になった時、大変だったんだよ… >>323 DL版で再インストールとかできるのかな? >>322 office365みたいにDL版しかないですよ、netに繋げなくて使えるのは特殊な現場用で一般には売ってないです >>327 マジで? 昔みたいにディスク版はないの? オフライン版も一度オンラインからインストーラー落として入れる形だから VBAについて質問です。 あるレコードについて、キー以外のすべてフィールドの値を消去したいのですが、フィールドの型によって NULL値を入れられるものとエラーがでるものがあります。 文字列型のフィールドならOKでも日付型だとダメだったり、Yes/No型だとダメだったり。 Do If rsB.Fields(fcnt).name <> ("顧客番号") Then rsB.Fields(fcnt) = "" end if fcnt = fcnt + 1 If fcnt > rsB.Fields.Count - 1 Then Exit Do Loop rsB.Update ↑このようにまとめて書くのは諦めるしかないのでしょうか?型を判定して場合分けできますでしょうか? >>330 「ダメだった」ときは、何をセットするんですか?セットしないで飛ばすんですか? サンプルはNullじゃなくて""をセットしているみたいですが。 判定はField.Typeプロパティを参照すればええです。 Null不許可な列だったら...On Error 処理でエラー判定するのですな。 >>330 無理にループでまとめなくても良いと思いますよ rsB.Fields("フィールドA") = Null rsB.Fields("フィールドB") = False : どうしてもまとめたいなら上の方がレスされた様にフィールドタイプ判定ですね あと値要求「はい」のフィールドや Yes/No 型は Null 更新できません 日付と商品、個数などが列挙された紙データを入力するときは いったんエクセルで処理してACCESSにインポートしてるんですが みなさんはどのようにやりますか? 同じ日付などはオートフィルできますし楽な気がします 2つのソフトを使う手間はありますが…… みなさんどのようにされていますか? 業務の内容が見えないので何とも言えませんが 配布したり、各部署で編集するならExcel 同じ部署の一人〜数人で運用するならAccess とか、業務次第ですかね どんなにがんばってもExcelでは無理そうな時だけAccess >>334 >>335 直接大量に入力するってのはACCESSではなかなかきついですよね 表形式のエクセルの方がダーッと入力できるきがする ACCESSでも表組みできないことはないけど エクセルみたいにエンターとタブで連続して高速で、ってむずかしくない? 大量入力は、桐にしとけ、昔のスーパーレジみたいにボコボコ入力できるぞ >>333 いちいちインポートとか面倒だから アクセス側からリンクで取り込んで必要な表を組み替えて利用する access2013のVBAで.netの「enum.getvalues」のように列挙型の一覧を取得する方法ってありますか? ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる