【ACCESS】アクセスのおすすめのeラーニングやDVDがあったら教えていただきたいです。
レベルは初級で、テーブルに入力したり、インポートでデータを取り込んだことは
ありますが、クエリやフォームがわかってません。
効率的な勉強方法があったら、教えて下さい。

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

A 回答 (1件)

「魔法使いの開発工房」というサイトがお奨めです。



実際のデータベース作成の流れに沿って説明されているので、
非常にわかりやすく、実践的です。

このサイトで勉強して、ACCESSをまったく使ったことがなかった私でも、
会社での工数管理データベース程度は作れるようになりました。

参考URL:http://www.mahoutsukaino.com/
    • good
    • 1

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

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

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

QACCESS2003のデータアクセスページの使い方について

イントラ内でACCESS2003のデータアクセスページを使いたい。

1.ACCESS2003のデータアクセスページを作成しました。
2.そのMDBファイルと、データアクセスページ(htmファイル)を、WINDOWS2000ServerのInetpub内のwwwrootフォルダの中へ入れました。
3.ここにはイントラ内のHPなどを置いています。(普通に見れています。)
4.クライアントから、データアクセスページのhtmファイルを見に行くと「データソースログオン」が立ち上がります。(パスワードを設定しています。)
5.パスワードを入れるとデータアクセスページ(htm)から、通常のアクセスのフォームのごとくデータ入力が出来る予定なのですが(泣)できません。(泣)

で、悩んでおります。

ACCESS2003のMDBファイルとデータアクセスページ(HTMファイル)をサーバーのwwwrootへ置いただけでは、データアクセスページを通してmdbファイルへの入出力は不可能なのでしょうか?

Aベストアンサー

MDBに接続されたAccessプロジェクトを開いている場合データアクセスページは自動的にそのデータベースに接続されてそのパスがデータアクセスページのConnectionString プロパティに設定されます。
ページを作成した後でデータベースを移動またはコピーした場合はConnectionString プロパティに設定されているパスを更新して新しい保管場所を設定する必要がありますがどうなっていますか?
そこを確認してみてください。

Q【アクセス】クエリで、行と列を入れ替えるには?【access】

こんにちは。
現在アクセスの勉強をしているのですが、
クエリの作り方で質問があります。
現在、営業マンごとの売上を集計しているのですが、
通常だとこのように列ベースで集計されると思います。

A男 100万
B男 200万
C男 300万

これを、以下のように行ベースで集計することは出来るのでしょうか?(エクセルのピボットがイメージです)

A男    B男    C男
100万   200万   300万

お手数お掛けしますがよろしくお願いいたします。

Aベストアンサー

クロス集計クエリでできます。
クエリの新規作成でウィザードが開きますので順次進めていけば出来上がります。
行を売上に列を営業マンに設定して値を合計にすれば出来ます。簡単ですよ。

Qホームページ移転に伴う.htaccessの使い方ですがアップロードして

ホームページ移転に伴う.htaccessの使い方ですがアップロードして削除できなくなる事ないですか??また、さくらサーバーは.htaccess使えますか??

Aベストアンサー

.htaccessだけではなく、
ファイルはパーミッションによっては一旦削除できなくなると思いますよ・・・
使えないのにアップすると削除出来ないとか。

>さくらサーバーは.htaccess使えますか??
使えます。
.htaccessを使えない有料サーバってあるのでしょうか?・・・

Q【ACCESS VBA】アクセスからデスクトップ上のエクセルを開く

ACCESSで、デスクトップ上の既存EXCELファイルにデータをエクスポートし、
処理後にそのファイルを開く処理を考えています。

上手くできれば、他の人にも使って貰えるようにしたいので
「デスクトップの取得」「そのファイルを開く」処理を教えてください。
よろしくお願いいたします。

Aベストアンサー

いろいろな方法があり、処理目的などで使い分けるのですけど...
代表的なやつです。

  Dim WSH   As Object
  Dim sDesktop As String
    
  Set WSH = CreateObject("WScript.Shell")
  
  ' // Desktop のパスを取得する
  sDesktop = WSH.SpecialFolders("Desktop")
  MsgBox sDesktop

  ' // Desktop 上の Book1.xls を開く
  WSH.Run Chr(34) & sDesktop & "\Book1.xls" & Chr(34)
  
  Set WSH = Nothing

QAccessで作成したテーブルのOLEオブジェクトの使い方

Accessで作成したテーブルにデータ型(OLEオブジェクト型)で画像を取り込みできるようにしました。
取り込みした画像を開くためのフォームを作成して画像を開けるようにしました。
下記の内容です。

Private Sub Form_Open(Cancel As Integer)
Form.Caption = ProgName
End Sub

しかし「ビットマップ形式」ですと問題なく開くのですが、「JPG形式」ですと開けないのです。取り込みしたAccessテーブルのフィールドから直接だとひらけます。
Accessで作成したフォームから、「JPG形式」の画像を開くにはどうすればよろしいですか?
また、画像を1000件ほど取り込みすると大きいデータベースになってしまいます。Accessのデータベースのサイズは制限があるのかしら?
アドバイスいただけれは幸いです。

Aベストアンサー

Access のバージョンは?
んで Web で検索する努力はしましょうよ。
丸 1日ぐらい検索しっぱなしで悩まないと。

Google「access ole jpeg」で検索
http://www.google.com/search?hl=ja&lr=lang_ja&ie=UTF-8&oe=UTF-8&q=access+ole+jpeg&num=50

Access 2003 では以下のような制限があるようです。
■ Access 2003 で OLE オブジェクトとして JPEG および GIF 画像を取り扱う場合の注意事項
http://support.microsoft.com/kb/884484/ja

■ OLE オブジェクト型のフィールドに格納されているイメージが正しく表示されません
http://support.microsoft.com/kb/832508/ja

解決策としては JPEG を開ける OLE コンテナになるアプリケーションをインストールしておく。

Google「Access データベース サイズ 制限」で検索
http://www.google.com/search?hl=ja&num=50&q=Access+%E3%83%87%E3%83%BC%E3%82%BF%E3%83%99%E3%83%BC%E3%82%B9+%E3%82%B5%E3%82%A4%E3%82%BA+%E5%88%B6%E9%99%90&lr=lang_ja

Access のバージョンは?
んで Web で検索する努力はしましょうよ。
丸 1日ぐらい検索しっぱなしで悩まないと。

Google「access ole jpeg」で検索
http://www.google.com/search?hl=ja&lr=lang_ja&ie=UTF-8&oe=UTF-8&q=access+ole+jpeg&num=50

Access 2003 では以下のような制限があるようです。
■ Access 2003 で OLE オブジェクトとして JPEG および GIF 画像を取り扱う場合の注意事項
http://support.microsoft.com/kb/884484/ja

■ OLE オブジェクト型のフィールドに格納されているイメージが正...続きを読む

Q【2】 【VBA】アクセス 条件付書式 (Yes/No型) 

以前にも質問してアドバイスを頂き
​http://msdn.microsoft.com/ja-jp/library/cc347606.aspx​
をみてやってみたのですが全然うまくいきませんでした。

式 [テーブル1.フィールド1]=True
該当するものの背景を灰色
にしたいのですが
この「テーブル1」は「親フォーム」のサブフォームの中に入っている「子フォーム」上あるものなのです。

Sub test5()
With Forms("子フォーム").Controls("フィールド1").FormatConditions(1)
.BackColor = RGB(255, 255, 255)
End With
End Sub

を実行すると
マクロの式または visual Basic コードで参照されている ’子フォーム’フォームが見つかりません。
のエラーが返ります。

そもそも「親フォーム」「テーブル1」はどこに入れればいいでしょう?

よろしくお願いします。

Aベストアンサー

>kurodai2さんには申し訳ありませんが、説明が重複する部分も含めて、通しで説明させて

DexMachinaさん、お気遣いどうもです。

fsjklsさん、1点補足してください。
最初からフィールド1に静的に、たとえば3通りの条件付書式を設定しておくことと、DexMachinaさんのコードの様にopen時に、フィールド1に設定し直す必要はどんな場面であるのでしょうか?
この部分が、理解しかねています。
open時に書いたのは、確認し易いのでしましたが、本来の目的は
どの場面で再設定の必要がある仕様なのでしょう?
私、実はそこが見えていません。

QAccess2000でFTPの使い方について。

Access2000のフォームから、実行のボタンをクリックするとFTPサーバに接続→ファイル取得→Accessテーブルに取込→FTPサーバのファイル削除→FTPサーバの接続切断という処理をしたいのですがどのようにしたらよいかわかりません。説明不足だとは思いますが、アドバイスを宜しくお願い致します。

Aベストアンサー

ちなみに先ほどのFTPサンプルは、BASP21をインストール後、サンプルのコードを新規モジュールに貼り付けて(たとえば以下をまるごと)実行すればAccessでもそのまま動きます。

sub file_download()

Dim ftp As Object, rc As Long, v As Variant, v2 As Variant
Dim ctr As Long

Set ftp = CreateObject("basp21.FTP")
ftp.OpenLog "c:\temp\log.txt"
rc = ftp.Connect("ftp.microsoft.com", "anonymous", "")
If rc = 0 Then
v = ftp.GetDir("bussys/winnt/winnt-public", 2) ' ディレクトリ一覧(詳細)
If IsArray(v) Then
For Each v2 In v
Debug.Print v2
Next
End If
v = ftp.GetDir("bussys/winnt/winnt-public") ' ディレクトリ一覧(ファイル名のみ)
If IsArray(v) Then
For Each v2 In v
Debug.Print v2
Next
End If
rc = ftp.GetFile("bussys/winnt/winnt-public/*", "c:\temp") 'ファイル受信

end sub

実行には20秒ほどかかります。
実行前にはCドライブにtempというフォルダを作っておいてください。

ちなみに先ほどのFTPサンプルは、BASP21をインストール後、サンプルのコードを新規モジュールに貼り付けて(たとえば以下をまるごと)実行すればAccessでもそのまま動きます。

sub file_download()

Dim ftp As Object, rc As Long, v As Variant, v2 As Variant
Dim ctr As Long

Set ftp = CreateObject("basp21.FTP")
ftp.OpenLog "c:\temp\log.txt"
rc = ftp.Connect("ftp.microsoft.com", "anonymous", "")
If rc = 0 Then
v = ftp.GetDir("bussys/winnt/winnt-public", 2) ' ディレクトリ一...続きを読む

Q【ACCESS】複数のパソコンからアクセスして同時にマクロを動かせますか?

小さな会社(製造業)でEXCELで事務から生産まで管理しております。
ですが将来的にはデータベースに移行しようと考えております。

その時に使うデータベースソフトは
MS-ACCESSにしようと思っているのですが、
偶然、以下のリンクの記事を見てやろうとしていることが

ACCESSで可能かどうか疑問を持つようになりました。

複数クライアントが同時にデータ登録できる
データベースアプリケーションソフト
https://oshiete.goo.ne.jp/qa/9689138.html?from=myanswer


MS-ACCESSに詳しい人、すいませんが以下の2点のことが
ACCESSで出来るのか(向いている)のか教えて下さい。

追記
今すぐというわけではないので、一般的に「よく使われている」とか
「他のデータベースソフトにした方がいい」というレベルでOKです。
詳しい方、説明の上手な方、よろしくお願いします。

1)複数のパソコンからデータベースにアクセスして同時にデータ入力をする

2)複数のパソコンからアクセスして同時にマクロを動かす

小さな会社(製造業)でEXCELで事務から生産まで管理しております。
ですが将来的にはデータベースに移行しようと考えております。

その時に使うデータベースソフトは
MS-ACCESSにしようと思っているのですが、
偶然、以下のリンクの記事を見てやろうとしていることが

ACCESSで可能かどうか疑問を持つようになりました。

複数クライアントが同時にデータ登録できる
データベースアプリケーションソフト
https://oshiete.goo.ne.jp/qa/9689138.html?from=myanswer


MS-ACCESSに詳しい人、すいませ...続きを読む

Aベストアンサー

それぞれの端末にあるAccessのマクロを、それぞれの端末で同時に実行するという意味だと思いますが、可能です。
データを置くサーバー・HD等にはマクロを作らず、端末にあるマクロをそれぞれで実行するということですね。
私の方では10人位の部署で使っていますが、不具合等発生したことはありません。
もちろん、作り方がおかしいと正しく動きませんが。

QRuby on Rails 「attr_accessor」 の使い方に

Ruby on Rails 「attr_accessor」 の使い方について

こんにちは。

現在、Ruby on Railsで登録画面を作成しているのですが、attr_accessorで定義した項目に対して、validationのチェックを行うと、問題が起きてしまいました。

attr_accessorで定義した項目は、DB登録の対象ではないのですが、lengthのチェック等を行う必要があり、validates_length_of等を使って入力チェックを行っています。

問題になったのは、入力があったときだけチェックをかけたいのに、入力がなくてもチェックがかかってしまうという状態になってしまうことです。
「:if => 項目?」を書いてみると、「undefined method」のエラーがでてしまいます。

どなたか対応策の分かる方がおられましたらご教授いただけないでしょうか?

下記に実際の問題箇所のモデルクラスのソースを書いておきます。

 class User < ActiveRecord::Base

   attr_accessor :NEW_USER_PW ← 追加したアクセサ

   # 追加したアクセサに対するチェック
   validates_length_of :NEW_USER_PW, :minimum=>4, :message=>"は%d桁以上を設定してくださ            
    い。", :on => :update, :if => :NEW_USER_PW?

 end

上記のチェック内の「:if => :NEW_USER_PW?」で落ちてしまいます。
入力がないのにチェックに引っかかるとまずいので、入力がないときだけ上記チェックを行えれば良いのですが・・・。

どうぞ宜しくお願い致します。

Ruby on Rails 「attr_accessor」 の使い方について

こんにちは。

現在、Ruby on Railsで登録画面を作成しているのですが、attr_accessorで定義した項目に対して、validationのチェックを行うと、問題が起きてしまいました。

attr_accessorで定義した項目は、DB登録の対象ではないのですが、lengthのチェック等を行う必要があり、validates_length_of等を使って入力チェックを行っています。

問題になったのは、入力があったときだけチェックをかけたいのに、入力がなくてもチェックがかかってしまうという状...続きを読む

Aベストアンサー

attr_accessor :NEW_USER_PWを定義したからといって、
NEW_USER_PW?メソッドが定義されるわけではりません。
attr_accessorはゲッターとセッターメソッドを作るだけです。
それ以外の論理値を返すようなメソッドは自作しなければなりません。

NEW_USER_PW?メソッドを作成されていないのなら、「undefined method」が
出てしまうのは当然です。

質問にあるように、「入力があった場合のみ」とありますので、
NEW_USER_PW?メソッドを下記のように実装すればチェック可能です。

def NEW_USER_PW?
@NEW_USER_PW.size > 0
end

また、ifにはprocオブジェクトを渡すこともできますので、
:if => Proc.new{|u| u.NEW_USER_PW.size > 0}
と書いてもいいでしょう。


NEW_USER_PWというインスタンス変数はすべて大文字を使用されていますが、
見る人によっては定数と勘違いします。
変数であれば小文字表記を利用するほうが良いかもしれません。

attr_accessor :NEW_USER_PWを定義したからといって、
NEW_USER_PW?メソッドが定義されるわけではりません。
attr_accessorはゲッターとセッターメソッドを作るだけです。
それ以外の論理値を返すようなメソッドは自作しなければなりません。

NEW_USER_PW?メソッドを作成されていないのなら、「undefined method」が
出てしまうのは当然です。

質問にあるように、「入力があった場合のみ」とありますので、
NEW_USER_PW?メソッドを下記のように実装すればチェック可能です。

def NEW_USER_PW?
@NEW_USER_PW.s...続きを読む

Q【アクセス97】アクセスからエクセルへの変換での質問

アクセス97での質問です。

以下にあるようなテーブル(1)をエクスポートでエクセルにだします。
その際、ふつうにエクスポートするとヘッダーがでてしまいます。
これを出さずにエクスポートする方法を教えてください。
(どんな方法を使っても結果、このテーブルがエクセルに書き出されればOKです。
 VBAでもかまいません・・・。)

<アクセステーブル(1)>

題名     作者    ISBN番号   読み仮名
アクセス入門 田中一郎  00000000アクセスニュウモン
エクセル入門 鈴木二郎 00000001   エクセルニュウモン
ワード入門  佐藤三郎  00000002   ワードニュウモン
一太郎入門  加藤五郎 00000003   イチタロウニュウモン
花子入門   伊藤六郎  00000004   ハナコニュウモン


               ↓エクスポート↓

<エクセル>

アクセス入門 田中一郎  00000000アクセスニュウモン
エクセル入門 鈴木二郎 00000001   エクセルニュウモン
ワード入門  佐藤三郎  00000002   ワードニュウモン
一太郎入門  加藤五郎 00000003   イチタロウニュウモン
花子入門   伊藤六郎  00000004   ハナコニュウモン


よろしくお願いします。

アクセス97での質問です。

以下にあるようなテーブル(1)をエクスポートでエクセルにだします。
その際、ふつうにエクスポートするとヘッダーがでてしまいます。
これを出さずにエクスポートする方法を教えてください。
(どんな方法を使っても結果、このテーブルがエクセルに書き出されればOKです。
 VBAでもかまいません・・・。)

<アクセステーブル(1)>

題名     作者    ISBN番号   読み仮名
アクセス入門 田中一郎  00000000アクセスニュウモン
エクセル入門 鈴木二...続きを読む

Aベストアンサー

CSVファイルでよければ、マクロでできますね。

コードを書いて、ExcelBookを作ってみました。
Bookを作った後、列幅を揃えたり、保存したりしています。不要なら削除して下さい。

Microsoft DAO 3.6 Object Library(多分・・・。Access97は何?)を参照設定します。
当方、Access2000で確認済みですが、Access97でも大丈夫と思います。


Sub MakeExcelSheet()
  ' <<<Microsoft DAO 3.6 Object Libraryを参照設定 >>>
  Dim myExcel As Object 'Excelオブジェクト
  Dim myBook As Object 'ブック
  Dim rw As Long, col As Integer '行、列カウンタ
  Dim db As DAO.Database 'データベース
  Dim rs As DAO.Recordset 'レコードセット

  'Excelオブジェクトを作る
  Set myExcel = CreateObject("Excel.Application")
  myExcel.Visible = False 'TrueでExcelBookが見える

  '新規Bookを作る
  Set myBook = myExcel.Workbooks.Add

  'データベース
  Set db = CurrentDb
  Set rs = db.OpenRecordset("テーブル1") '例『テーブル1』

  With myExcel
    .ScreenUpdating = False 'Excelの表示を止める
    .DisplayAlerts = False 'メッセージを出さない

    'テーブルの内容をExcelシートに出力
    While rs.EOF = False
      rw = rw + 1
      For col = 1 To rs.Fields.Count
        .Cells(rw, col).Value = rs.Fields(col - 1).Value
      Next

      rs.MoveNext '次のレコード
    Wend

    .ScreenUpdating = True '表示の再開

    .Cells.Select
    .Cells.EntireColumn.AutoFit '列幅を最適化
    .Cells(1, 1).Select
    .ActiveWorkbook.Saved = True
    .ActiveWorkbook.SaveAs Filename:="A:\myBook1xxx.xls"  'ファイル名を指定
    .DisplayAlerts = True
    .Quit
  End With

  rs.Close
  db.Close
  Set rs = Nothing
  Set db = Nothing
  Set myExcel = Nothing
End Sub

CSVファイルでよければ、マクロでできますね。

コードを書いて、ExcelBookを作ってみました。
Bookを作った後、列幅を揃えたり、保存したりしています。不要なら削除して下さい。

Microsoft DAO 3.6 Object Library(多分・・・。Access97は何?)を参照設定します。
当方、Access2000で確認済みですが、Access97でも大丈夫と思います。


Sub MakeExcelSheet()
  ' <<<Microsoft DAO 3.6 Object Libraryを参照設定 >>>
  Dim myExcel As Object 'Excelオブジェクト
  Dim myBo...続きを読む


人気Q&Aランキング

おすすめ情報