教えて下さい。

エクセルでデータベースを作りたいのですが、入力を効率的に行えるうまい方法はありませんか?
たとえば、お客売掛金台帳が400名分くらいあって、売上品目が10種類あるとします。
毎日の売上を入力する際に、1件1件のお客台帳を開いて入力するのではなく、入力フォームのようなものを作ってそのフォームにお客コード・品目コード等を入力すれば、該当するお客台帳にデータが自動的に記録されていくような、そういう感じなのですが。
入金があった場合は商品ごとではなくまとめて入金処理します。
うまい方法があれば教えて下さい!

このQ&Aに関連する最新のQ&A

A 回答 (2件)

あくまで>>>>個人的意見<<<<を述べます。



以前に「どうしても」という依頼があり作成したことがあります。
その時はVBAと関数をMixさせ出来あがりました。
ただ、もう2度と作成する事はないでしょう。それが誰の命令だと
しても・・・だって記述が何千行・・・思い出したくもありません!
↓苦い思い出の1個所です。
'-----------------データのコンバート-------------------------------
Private Sub CommandKonB_Click()
ret = MsgBox("データをコンバートしますか?", vbYesNo, "コンバート")
If ret = vbYes Then

Sheets("売上").Select
Range("D11:E11").Select
With Selection

・・・・・この後521行ほど永遠と続く!・・・・・

Sheets("売上").Select
Range("D11:E11").Select

MsgBox ("コンバートが完成しました!")
End If

End Sub
'-----------------------------------------------------------------
出来あがりは「重い」の一言です。
同じ事を他のデータベースソフトで作れば1時間もかからないで終わる作業が
2日・・・作業する人のことを考えるのであればデータベースソフトで作成す
る方がイイでしょう。
>誰かの依頼であれば丁重にお断りする事をお勧めします。

ExcelにデータがあったとしてもAccess等であればそのままリンクして
テーブル扱いに出来ますしTBL・クエリ・フォーム・レポート位までは
さほど悩まずに作成できます。
ExcelとAccessの連携は、個人的にですけど「あらゆる帳票類や計算・請求書
に対応できる」と思います。当然バッチ作業も!
Accessにも問題はたくさんありますが、Excelでのデータベースはもっと問題
を抱えるはずです。
>どうしてもやりたい場合は、「まず重複の無いIDを作成しお客様IDを別に作成
します。その上でお客様IDを検索したらフォーム上で入力した必要項目を変数に
代入し同じお客様IDを持つ指定セルに戻します。」こんな感じで繰り返し作業を
行います。
    • good
    • 0

こんにちは、



jetstreamさんの質問を読んでいると、データベースとしては普通の使い方ですがエクセルで同じ機能を実現しようとすると、その方がずっと難しくなってしまいます。

アドバイスとしては、エクセルではなくACCESSなどのデータベースを使って作成する事をお進めします。ACCESSの入門書は本屋に沢山有りますので分かりやすい物を買って勉強してください。
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q不動産会社内(賃貸)取引台帳の作成方法について質問です。

不動産会社内(賃貸)取引台帳の作成方法について質問です。

取引台帳では、その取引をまとめた要旨を作り、

それと共に『契約書原本』を綴らないといけないのでしょうか。

原本を綴るとすれば、それと共に提出してもらった

身分証明証や印鑑証明等も一緒に取引台帳内に綴るものですか。



基本的な質問で申し訳ないですが、教えてください。

Aベストアンサー

取引台帳はその内容だけ記載し保管すれば足ります。
契約書や個人情報などと一緒に保管する必要はありません。また賃貸借の場合犯罪収益移転防止法の適用外ですから、本人特定個人情報の保管義務はありません。
契約書原本という事は貸主でしょうか?貸主ならば物件及び号室ごとに、契約書やその他の書類などを保管したほうが後々管理し易いはずです。仲介などであれば契約ごとに通し番号などを付けて管理することが多いようです。
取引台帳はあくまで宅建業法上作成しなければならないもの、契約書や個人情報の類はその会社個々で、保管、利用がし易い様な保管方法と分けてお考えになって構いません。
建築宅地課などの監督課が立ち入りに来ても、取引台帳から任意で2枚ほど、この契約書を提示してください、という指示があり、それに該当する契約書、重要事項が手際よく提示できればOKです。

QAccess2002 閲覧フォームから入力フォームへのレコードの受け渡し

度々すみません。

Access初心者です。よろしくお願いします。

例えば「基本情報フォーム」から、「付帯データ入力フォーム」を起動する作りになっていたとします。

この場合、基本情報フォームは閲覧専用で、付帯データ入力フォームは入力用フォームになると思います。

しかし、コマンドボタンの追加ウィザードで両方のフォームで取り扱う「ID」で絞り込んで入力フォームを開こうとすると、うまく行きません。
単純に、入力フォーム単体で立ち上げると、入力できます。

やりたいことは単純で、閲覧フォーム上のIDを、入力用フォームのIDフィールドに表示させたいだけなのですが。。。

解決策をご存知の方がいらっしゃいましたら、ご教授お願いいたします。

Aベストアンサー

#2です

> 入力用フォームのほうにはある「区分」が用意されており、区分コードをコンボボックスで選択する作りになっています。
> その場合でも、1つのフォームでできるのでしょうか?
> 「表示フォーム」は区分コードに紐づいている「区分名」が表示されるようにしてあります。

コンボボックスの内容(連結列)が同じであれば、同様に既定値を設定できます。

コンボボックス名が「cbx01」だったとします。

表示の元となる区分テーブル「T区分」が以下だったとします。

区分コード 区分名
1      区分A
2      区分B
3      区分C
4      区分D
5      区分E

コンボボックスの値集合ソースが
SELECT 区分コード, 区分名 FROM T区分;

連結列:1
列数:2

表示フォームでの列幅: 0cm;2cm (1列目を表示しない:区分名だけ表示)
入力フォームでの列幅: 2cm;0cm (2列目を表示しない:区分コードだけ表示)

この設定で、コンボボックスに表示されるものは変わりますが、連結されているものは「区分コード」になっているので、

Me.cbx01.DefaultValue = Screen.ActiveForm.cbx01

で既定値を設定することができます。
(起動元に同様のコンボボックスがあったとして)

表示用/入力用ともコントロールソースには「区分コード」に対応するフィールドを指定していると思いますので、問題なさそうな気がします。


なお、起動元に「区分名」しかない時とかは、その時のテキストボックス名を「txt1」とすると、

Me.cbx01.DefaultValue = _
  DLookup("区分コード", "T区分", "区分名 = '" & Screen.ActiveForm.txt1 & "'")

とすれば既定値として設定できます。

列幅(表示)の切り替えは、ColumnWidths で変更します。
列幅が上記例であるとすれば、
レコードがあったら、Me.cbx01.ColumnWidths = "0cm;2cm"
入力用なら、Me.cbx01.ColumnWidths = "2cm;0cm"
と設定すれば、表示は切り替わります。

#2です

> 入力用フォームのほうにはある「区分」が用意されており、区分コードをコンボボックスで選択する作りになっています。
> その場合でも、1つのフォームでできるのでしょうか?
> 「表示フォーム」は区分コードに紐づいている「区分名」が表示されるようにしてあります。

コンボボックスの内容(連結列)が同じであれば、同様に既定値を設定できます。

コンボボックス名が「cbx01」だったとします。

表示の元となる区分テーブル「T区分」が以下だったとします。

区分コード 区分名
1...続きを読む

Q台帳について アルバイトですが、 パソコンで従業員管理台帳を 作成しなければなりません。 写真の

台帳について

アルバイトですが、
パソコンで従業員管理台帳を
作成しなければなりません。

写真のような台帳を自分で作りたいのですが、どのように作ればいいですか?

教えてください!

ちなみに写真はフリーソフトの
「人事部長」です

Aベストアンサー

こんばんは・・
 Microsoft Office Access でできそうですが・・
http://www.amazon.co.jp/s/?ie=UTF8&keywords=fom+access2010&tag=googhydr-22&index=aps&jp-ad-ap=0&hvadid=90444400591&hvpos=1t1&hvexid=&hvnetw=g&hvrand=7124254574530969036&hvpone=&hvptwo=&hvqmt=e&hvdev=c&ref=pd_sl_65heatukud_e
 で fom access2010の検索をかけてください。
Access応用(中級並)レベルの知識が必要です。
 頑張ってください。

QAC2000でフォームから入力したデータをサブフォームに表示

ID 商品名 単位 単価で商品マスタフォームを作っています。このフォーム内にサブフォームを作っておいて
データが入力するたびにサブフォームへ表示させたいのですが、このときの条件としてID(オートナンバー)を降順(最新のデータが一番上になる)・データシート形式にしたいと思います。
T_商品(テーブル名)
Q_商品(IDを降順としたクエリ)
MF_商品(各入力テキストボックスがあるフォーム)
SF_商品(MF_商品に貼り付けるサブフォーム)
降順にすると一番若いIDのデータだけがサブフォームに
表示されるのです。
requeryは必要なのでしょうか?
よろしくお願い致します。

Aベストアンサー

MF_商品(各入力テキストボックスがあるフォーム)
SF_商品(MF_商品に貼り付けるサブフォーム)
のRecordSourceは両方ともQ_商品ですか?
そうだとすると、
MF_商品で入力するたびに、Q_商品のRequeryが必要です。さらにSF_商品をRefleshする必要があります。
ただ、MF_商品での変更が反映されるのは、レコード移動後になりますので、テキストボックスに入力したデータを反映させるには、Me.Refreshなどを実行して入力値をテーブルに保存しなければなりませんし、それらの処理を実行するとレコードを移動してしまうので、クローンやブックマークを使って元に戻る処理を加えなければならなくなります。結構面倒です。

Q施工体制台帳の作成の有無について教えてください。

民間工事となる同一敷地内で、A棟の改修工事・B棟1階部分改修工事・B棟2階部分改修工事・B棟3階部分改修工事・C棟新築工事があります。
どれらも施主との契約を別にしている為、5つの工事となります。
なお、B棟3階部分についてはテナント工事の為、施主が異なります。

金額的には下請に依頼する金額の合計が、それぞれの工事で5000万以上となる為、全工事について施工体制台帳作成の摘要を受けます。
この場合、監理技術者は5人必要となりますか?
また、施工体制台帳をまとめてしまうことは出来ますか?それとも5つ作成となりますか?
なお5つの工事は着工・竣工が多少ずれますが同時進行となります。

ご指導宜しくお願い致します。

Aベストアンサー

問題は施主との契約=経理的に一体として処理されるのかどうかだと思います。(例えば主体工事他○○付随工事として契約できるのかと言う点)
施主(契約相手)の違うところには、当然全てのものが別に必要。

工事の統合管理は統合してJV=ゼネコンなどの動きと一緒になるように考えます。
すなわち一番大きな工事区の者が統制を行う。

施工管理体制その他は、工事の特質も違う場面がありそうですので、似たようなものになるかも知れませんが、別々に作成する必要があると考えます。

役所には、現場代理人の異なるごとに、資料を添えて提出します。
もっとも、一括の話もあると考えますので、関係者連れ立って担当に具申致しましょう。

Qaccessの入力フォームでの入力規制

amuro-kamuiと申します。過日はレスのつかない質問をしてしまい反省しています。
実は職場で使うなんちゃってDBを作っているのですがどうも不満足なので解決策をご教授いただきたいと思い質問させていただきます
データ入力フォームを作りいくつかの項目(37個)を入力しているのですが、途中で誤った操作をしてもそのレコードが追加されてしまい困っています。
フォームの中に保存ボタンをつくりました。
このボタンをクリックするまではデータが保存されないようにするにはどうしたらいいのでしょうか?
本当に初歩的な質問ですがよろしくお願いします

Aベストアンサー

こんにちは。maruru01です。

フォームの更新前処理(BeforeUpdateイベント)に、各項目の内容をチェックするようにすればいいと思います。
フォーム上で各コントロールに値を入力しただけでは、まだテーブルには書き込まれません。

Qアプリ作成

アプリ作成
こんにちは
エクスペリアのアプリを作成するソフトは市販されていますか?
教えてください。
よろしくお願いいたします。

Aベストアンサー

やー、Androidの開発は、基本的に無料でできますよー。真面目に作るとなると、

Eclipse for Java EE Developers
Android SDK
Android Development Tools

といったものが必要です-。この他、Java Development KitとゆーJavaの標準開発環境が必要です-。

ただし!
この「正式な開発環境」以外では作れない、とゆーわけでもないですー。

http://appinventor.googlelabs.com

ここにあるApp Inventorとゆーのは、マウスで画面をデザインして、アイコンを並べてプログラムを作るとゆーものですー。Javaとかプログラミング言語は知らなくても大丈夫ですー。基本的なアプリなら、これで作れますよー。ただ、英語は多少わからないと無理ですねー。慣れると、ちょこちょこっとしたアプリなら、1時間もかからずにそこそこ使えるものが作れますねー。

ただしこのサイトはあらかじめ登録が必要なので、アクセスして登録を完了してくださいなー。

Qエクセルに入力した内容がアクセスの入力フォームとリンクすることが出来ますか

会社内で使用する色々な様式をエクセルで作成しています。そのある様式の入力内容を今後データーベース化できるできるように検討しろと指示されました。
私はまだエクセルでどのようにすればよいのか分からず、その人はアクセスがデーターベース化するのは非常に検索がしやすいので検討してみたらと言っています。
アクセスは私は今まで全然やったことがないのですが、これから勉強しようかと考えています。本を読む限りではあまり多くの内容のフォームは非常に労力がかかるのでお勧めできないと書いていますが、それでも挑戦しないといけないのかなと考えています。もし出来たときには今までのエクセル様式に入力したらその内容がアクセスのフォームとリンクできたら楽だなと思っています。
まだ初心者ですがそんなことができるのでしょうか教えてください。

Aベストアンサー

VBAでADO等でMDBにリンクするようにすれば可能かと思いますが
無駄な労力を強いられそうです(^^)笑

いっそのことACCESSでフォームを作り直した方が手っ取り早いと思います
データはACCESSにコンバートできますので、思い切って乗り換えた方がいいと思います。

また、EXCEL上でもデータベースと同等の作業が出来ますので、こちらも考えてみてはどうでしょうか?

目的の様式がどんなものなのかわかりませんが、社内LANで共有して使用するにはEXCELもACCESSも
お勧めしません
できればSQLserver・ORACLEなどのデータベースサーバーを導入した方がいいと思います
MSDEといった無料のものも御座いますし・・・

Qiphoneアプリ作成言語について

初めてiphoneアプリの作成を考えていますが、アプリ作成の言語で迷っております。
Objective-Cとjavascriptどちらで作成したらよいか助言をいただけますでしょうか。

アプリの内容は
1.ユーザー(A)がアクションをおこす
2.他のアプリユーザー(B)へ通知をする
3.ユーザー(B)がアクションを起こす
4,ユーザー(A)へユーザー(B)の結果を返す
といった流れです。

私のスキルとしてはHTMLとCSSは仕事で使ってますので、問題はありません。
あとフラッシュのアクションスクリプトを勉強中です。

作業環境としてはmacで作成しようと考えています。

以上宜しくお願いします。

Aベストアンサー

2台(以上)のiPhoneの間で、対戦ゲームをするようなイメージでしょうか?ゲームアプリでないとしても、通信を伴うものは、むずかしい技術ですから、まず単独で動くアプリの開発を行って、それから……というように、段階を踏んでいったほうがいいと思います。
それともアプリケーション間通信を行うということでしょうか?iOSではアプリケーション間通信を大きく制限していますので、これまたむずかしい技術になります。まあいずれにしてもJavaScriptではまったく歯が立たない領域ではあります。
ちょこちょこっと勉強したら、すぐにアプリができあがるといった、簡単な世界ではありませんから、ちゃんと腰を落ち着けて、基礎からきっちり技術を積み上げていく覚悟を持つべきです。
C言語はかならず必要になります。上級までマスターする必要はありませんが、構造体あたりまでは勉強してください。主な使用言語はObjective-Cですが、iOSフレームワークと不可分な存在なので、けっきょくはいっしょに勉強していくことになります。

※iOSフレームワークは、Mac OS X(Cocoa)フレームワークのサブセットではありません。Foundationフレームワークという共通部分はありますけどね。
※iOSフレームワークに、「Apple Script」は含まれておりません。いうまでもなく、Apple Scriptは、iPhone上では動作しません。

目的のアプリが、なんらかの通信技術をともなうものであれば、別途その技術の勉強が必要です。場合によっては、すでにほかの回答者から指摘があるように、サーバサイドの、サーバアプリケーションの開発も必要になるかもしれません。

2台(以上)のiPhoneの間で、対戦ゲームをするようなイメージでしょうか?ゲームアプリでないとしても、通信を伴うものは、むずかしい技術ですから、まず単独で動くアプリの開発を行って、それから……というように、段階を踏んでいったほうがいいと思います。
それともアプリケーション間通信を行うということでしょうか?iOSではアプリケーション間通信を大きく制限していますので、これまたむずかしい技術になります。まあいずれにしてもJavaScriptではまったく歯が立たない領域ではあります。
ちょこちょこっと...続きを読む

QACCESSでデーフル作成入力フォームで入力しながら、クエリのデータを参照したい

ACCESSで売上明細テーブルを作成し、入力用のフォームを作成しました。他に顧客マスタテーブルがあります。売上明細には顧客CDフィールドがありますが、顧客名等はマスターに存在するため設けてません。しかし売上明細入力時に顧客CDを入力した時点で顧客名の確認がしたいのです。そこで入力フォームの顧客CDの隣に非連結でテキストボックスを作り、そこに顧客名を表示したいのです。売上明細には顧客名のフィールドは追加したくありません。ただ参照したいだけです。顧客マスタと売上明細で顧客CDをキーにクエリを作成し、明細に対応する顧客情報は顧客情報検索というクエリで作成済みです。入力フォーム画面の非連結のフィールドのプロパティのコントロールソースに
=DLookup("[顧客名]","顧客情報検索","[顧客CD] =" _ & Forms![売上明細入力Form]![顧客CD])
と表記しましたがエラーになります。
最初はコントロールソースに直接顧客情報検索クエリの顧客名フィールドを表記し、フォーカス取得時にクエリを開くマクロを実行していました。でもやはり表示されませんでした。
顧客名の設定をどのように設定すればいいのですか?
コントロールソースでの設定だけでは無理なのでしょうか?
よろしくお願いします。

ACCESSで売上明細テーブルを作成し、入力用のフォームを作成しました。他に顧客マスタテーブルがあります。売上明細には顧客CDフィールドがありますが、顧客名等はマスターに存在するため設けてません。しかし売上明細入力時に顧客CDを入力した時点で顧客名の確認がしたいのです。そこで入力フォームの顧客CDの隣に非連結でテキストボックスを作り、そこに顧客名を表示したいのです。売上明細には顧客名のフィールドは追加したくありません。ただ参照したいだけです。顧客マスタと売上明細で顧客CDをキーにクエリ...続きを読む

Aベストアンサー

ご質問の件では、アンダーバー「_」は無用です。
(VBAの編集画面上であれば、一群の文字列の改行表示のために使用することもありますが、
 コントロールソースへの直接記述には使用できません)
従って、以下のようにすれば、とりあえず今現在起きているエラーは解消するかと思います:

現在:
=DLookup("[顧客名]","顧客情報検索","[顧客CD] =" _ & Forms![売上明細入力Form]![顧客CD])

修正後:
=DLookup("[顧客名]","顧客情報検索","[顧客CD] =" & Forms![売上明細入力Form]![顧客CD])
または:
=DLookup("[顧客名]","顧客情報検索","[顧客CD] =" & [顧客CD])

*「顧客情報検索」がフォームのレコードソースで、もしも「顧客マスタ」に相当するテーブルがあるの
 でしたら、ここの式にはそちらを使用した方がよいはずです。

なお、もしも「顧客CD」のデータが数値型ではなくテキスト型などの場合は、
=DLookup("[顧客名]","顧客情報検索","[顧客CD] ='" & [顧客CD] & "'")
のように、Where条件式の右辺がシングルクォーテーションで括られるようにする必要があります。


※演算コントロール(=コントロールソースが関数のコントロール)で誤作動というのは、私には経験が
  ありません。
  但し、VBAでは、「Me」で、コードを記述しているフォームそのものを参照することができますが、
  コントロールソースなど、プロパティシートに直接記述する関数では「Me」は使用できない、
  といった制限はあります。


  ------------------------------------

なお、演算コントロールでは、検索や並べ替えができないといった制約があります。
同じDLookupを使うのであれば、フォームではなくクエリで演算フィールドを作成してコントロール
ソースとして使用した方が、検索・並べ替えが行えるので使い勝手はよいと思います。
(「売上明細には顧客名のフィールドは追加したくありません」とのことですが、テーブルではなく
 クエリのみへのフィールド追加なので、問題ないのではないかと)

演算フィールドは、クエリのデザインビューの「フィールド:」欄に、
顧客: DLookup("[顧客名]","顧客マスタ","[顧客CD]=[顧客マスタ]![顧客CD]")
といったように入力します(「テーブル:」欄は空白のまま)。

*上記の式は、「顧客情報検索」がクエリで、「顧客CD」フィールドが「顧客マスタ」テーブルの
 「顧客CD」フィールドに拠っている、という前提で作成しました。

ご質問の件では、アンダーバー「_」は無用です。
(VBAの編集画面上であれば、一群の文字列の改行表示のために使用することもありますが、
 コントロールソースへの直接記述には使用できません)
従って、以下のようにすれば、とりあえず今現在起きているエラーは解消するかと思います:

現在:
=DLookup("[顧客名]","顧客情報検索","[顧客CD] =" _ & Forms![売上明細入力Form]![顧客CD])

修正後:
=DLookup("[顧客名]","顧客情報検索","[顧客CD] =" & Forms![売上明細入力Form]![顧客CD])
または:
=...続きを読む


人気Q&Aランキング

おすすめ情報