主人に頼まれて、簡単な顧客管理・売上管理のできるシステムをAccess2000で作りました。Accessの使用経験がほとんどなかったので、いろいろなテキスト等でデータベースとは。というところから勉強してきたつもりです。
しかし、データベースに関する簡単な知識や本当に基礎的なSQL文、Accessの操作方法は身についていても自分で使ったこと以外の操作やVBAの文、用語についてまったく無知なままです。
さらに、今使っているシステムをいろいろと改善してほしい(使いやすい工夫をもっと)と言われ自分の作品を見直しても、作品を作ることに必要なことしか頭に入れなかった私に、これ以上難しいことはできません。そこで、データベースのシステムに関する必要な知識等を本格的に勉強したいと思い、本屋に行くのですが・・立ち読み程度で買って帰って家で活用できません。
前置きが長くなったのですが、皆さんは難しい用語や使い方についてどのように勉強なさったのですか?お勧めのテキストはありますか?これは良かったよ!見たいな感じのもので。システムを作る際参考になったテキスト等教えてください。
あと、VBAの長いプログラムはどうやってかけるようになるんですか?今私はヘルプや人のプログラムを真似て書いたりしているだけです。すらすら書けるような方はやっぱり学校等で勉強されたんですか?
No.4ベストアンサー
- 回答日時:
頭の切り替えが大事な気がします。
SQL文にしてもプログラムにしても細かい物の積み重ねでしかありません。
100万行あるプログラムも機能毎に分けられた物が参照されたり連結されているに過ぎません。
勉強の仕方としてはまず
1.小さいプログラムせいぜい100行程度の物を本を丸写しでかまわないので作る。
2.そのプログラムの中をいじり倒す。
たとえば文字の大きさを変えたり、色を変えたりする所から始まって、自分で理解するまでカスタマイズしていく
3.覚えたいと思ったところを何度も同じ要領で反復していく
基本的にはこれだけです。
プログラム自体は至極簡単な物です。本当の言語を覚えるのとは比べ物にならないです。
どのプログラム言語もせいぜい10数個程度しか基本的な構文は存在しません。もちろん細部が違っていたり書き方次第でその特徴を生かせますが。
プログラミングが苦手な人は得てして本の通りに打ち込んでそこで出来た気になってしまう場合が多いようです。
そうなってしまうと、本から離れたときにどうしていいのか分からなくなってしまうのです。
そういう意味で頭の切り替えをして様々な角度から1つのプログラムを眺めることが出来るようになれば応用が利くようになるはずです。
ここをこうすればこうなるかな?とかここはこうだからこうなるはずだよな?とか考えた上でプログラムを検証していくと分かるようになっていくと思います。
ちなみに本は参考プログラムがあって(それも行数が短いやつ)目的別(何々をするには?みたいな)に書かれている本がお勧めです。
分からない状態で長いプログラムを見ても理解に時間がかかりすぎて嫌になってしまいますから。
まあ人それぞれ向き不向きな本はあると思いますが。
アルゴリズムなんかの本はある程度プログラムを覚えてからでも遅くありません。変な固定概念がつくと頭が迷宮に入ってしまうので。
実は、高専卒で、情報工学科出身なんですが、その頃からソフトの教科の単位は落としまくり留年経験ありです。同じ事を教官からいつも言われていたなと思い出しました。抽象的過ぎる質問にもかかわらず具体的にアドバイスをありがとうございました。まずは、自分でいろいろ短いものをいじくってみたいとおもいます。目的別の本はよさそうです。それを応用していくようにしてみます。いつかここでryu_dさんのように的確な回答ができる人になりたいです。ありがとうございました。
No.3
- 回答日時:
> 自分で使ったこと以外の操作やVBAの文、用語についてまったく無知なままです。
最低限、製品のヘルプは読むように心掛けましょう。Accessのヘルプは上位のバージョンの方が検索性が悪く、初心者に読めと奨めるのは気が引けますが、[F1]キーの操作をマスターするだけで、必要な知識と技術は確実に向上します。
具体的には、VBエディタ上、または、イミディエイトウィンドウ上で、キーワードをクリックし、キーボードの[F1]キーを叩けばOKです。たったこれだけのことで、寒い質問、眠い質問を繰り返す無駄な労力を削減できます。(笑)
> 立ち読み程度で
立ち読みで内容をどこまで精査できるか、が勝負です。
内容をよく確かめずに購入すると後で後悔することになります。
ジュンク堂等、一部の書店では気の済むまで長時間読めますので、納得の行くまで内容を読んでください。
「わかりやすい本だから買う」というのも一理ありますが、その場でスラスラ理解できる程度の浅い内容なら、購入してまで読む価値がない、とも言えます。
いずれにせよ、他人の意見を鵜呑みにするのではなく、自分で判断するのが一番です。
最近、Accessをあまり使わないし、Access関連の書籍もあまり読まないので、お役に立てるか心許ないところですが、参考になれば幸いです。
> ヘルプや人のプログラムを真似て書いたりしているだけです。
この方法には落し穴があるので、要注意です!
「お手本」の質がよければ問題ありませんが、そのプログラムを書いた人が必ずしも優れた技量の持ち主とは限りません。
ヘボなお手本で学ぶのでは百害あって一利なし、です。
(書籍についても同様で、中には、それはそれは酷い本もあり、出版社に「金返せ!」と言いたくなることもあります)
他人のプログラムを鵜呑みにするのではなく、「自分ならこう工夫する」、「ここを改良すればもっとよくなる」といった批判の眼で評価するなら、上達の糧になります。
> 長いプログラムはどうやって
誤解のないように申し上げておきますが、ソフトウェアの価値はプログラムの長さでは決まりません。
どれだけ長くても、使い手の要件と品質、保守性を満たしていなければ存在価値がありません。
(音楽や文学の世界とおなじだと思います。17文字の俳諧、31文字の短歌、20文字の漢詩で名作と言われるものは多数ありますが、5000枚あろうが100,000枚あろうが駄作は駄作です)
「規模が大きく、かつ、品質も保守性も優れたプログラム」をどう書くか、という意味なら、
(1) 大きく荒削りなものを、細部まで掘り下げて作り込む。
(2) 小さな部品を積み重ねて大きなものを作り上げる。(細粒化アプローチ)
の2つの手法があります。
# このあたりは、「ソフトウェア設計手法」にも通じる話ですので、専門家のコメントを期待します。
> 学校等で勉強されたんですか?
独学の人のほうが多数だと思います。
情報処理専門学校の卒業者より、「プログラミングに熟練した人」のほうが多数だと思いますので。
すごくはっきりと的確なお言葉でなんだかもやもやがすっきりしました(笑)あー私は考えすぎなやつだなーと。気持ちいいです。確かにヘルプは検索しにくいし(?さっきはあったのにどこへ?と言う感じ)見ていると疲れるし、分かんないしぐちゃぐちゃでした。質問も抽象的なのに理解していただいて申し訳ない気持ちです。参考書がいいものばかりではないとは、他の試験の勉強で感じていたことでした。まだパッと見て良し悪しが分かる技量はないので、目的にあったものを出来れば座り読みする位のねばりで選びたいです。まずは簡単な工夫をしてみて慣れたいとも思ってます。ありがとうございました。
No.2
- 回答日時:
>データベースに関する簡単な知識や本当に基礎的なSQL文、Accessの操作方法は身についていても自分で使ったこと以外の操作やVBAの文、用語についてまったく無知なままです。
それが普通だと思います。
>今私はヘルプや人のプログラムを真似て書いたりしているだけです
まさにこれの積み重ねしかないと思います。
私もVBAの勉強を始めたとき、本を何冊も買いましたが、当然一度に身につくものではありませんでした。
とりあえず自分のやりたいこと(作りたいシステム)を実現化するために本で調べたりインターネットで検索したりと試行錯誤していくしかないでしょう。
また、サンプル的なプログラム(自分がやりたいことに近いプログラム)があれば、とりあえずは意味がわからなくてもいいから使ってみることです。
そのうち以前は理解できなかったプログラムもだんだん分かるようになってきますよ。
頑張ってください。
早速の回答をありがとうございました。「小さなことからコツコツと」いう名言を思い出しているところです。TM31さんも積み重ねてこられたんですよね。時間はかかりそうですが、ここで質問したり、ネット検索したり、本もほかの方に教えてもらったようなものを選んだりして、ゆっくり頑張りたいと思ってます。どうもありがとうございました。
No.1
- 回答日時:
ラクダ本なんかは、個人の嗜好があるので、ある人は良いといっても別の人は「そうかなぁ~?」となるもんです。
自分でこれ!と思うものを買ったらと思います。
私もAccessを仕事で多用していますが、いまだ判らないことは沢山あります。そういう時は「教えてgoo」に質問しますね。もうこれが一番
「勉強の仕方教えてください」は抽象的過ぎるので、実際に作りながら詰まったところで、事あるごとに「このコントロールに○○した値を入れたいから、それができるVBAのコードを教えて」とか超具体的に質問していくのが良いと思います。
早速のお返事ありがとうございました。すぐに読ませていただきました。souta_nさんも質問されてるんですね。質問の仕方も私は逆に考えていました。あいまいな質問のほうがたくさん答えていただけると思っていましたが、souta_nさんの言われることのほうが回答もしやすいですよね。当たり前のこと気づいてませんでした。頑張ってもぶち当たったときは具体的に質問するようにします。ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
データベースファイル(.db)を開...
-
Accessを開きなおすとテキスト...
-
エクセルのフィルタ抽出が固まる
-
最新の日付とその金額をクエリ...
-
DBエラーを解決したい
-
ACCESSのSQLで、NULLかNULLでな...
-
Accessのリンクテーブルについて
-
顧客データベースを作る場合、...
-
警察はスマホに保存した動画や...
-
「1004:アプリケーション定義...
-
私はシステム会社に務めている...
-
シートが異なるセル同士を、相...
-
Access フォーム上でコンボボッ...
-
DocuWorksでの印刷
-
ITパスポートについての質問で...
-
ファイルが壊れて読み取れませ...
-
帳票フォームでのあるコンボボ...
-
テキストボックスにコントロー...
-
MS access2021で販売管理を作成...
-
Access クエリ上で表示させた割...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
パソコンの授業で課題が出まし...
-
プログラムを組むことが嫌にな...
-
VBA "Const"は何の略ですか?
-
ウイルス作成【作り方を聞いて...
-
理系学生は皆プログラミングで...
-
直販デスクトップを買うんです...
-
RTCで読み取った時刻がある時間...
-
中学1年生と始めるプログラミン...
-
プログラム作成ってどれくらい...
-
あるプログラムのコマンドライ...
-
65536は2の何乗なのでしょうか?
-
VBAで仕様書は書きますか?
-
正しい五十音順について
-
ゲーミングPCに入っているAlris...
-
0除算して、落ちるプログラムと...
-
Excelで4096点以上のFFTの方法
-
PICマイコンのコピー(クローン...
-
SNSをやらない理由ってなんです...
-
自動クエリとはどういうもので...
-
VBAにてメール作成した際、一部...
おすすめ情報