access 外部からダウンロードした vbaのモジュールのファイルのインポート

githubなどの外部のサイトから
vbaのモジュールをダウンロードできる、ということを
chatGPTさんから最近教わったのですが、

ダウンロードしたモジュールを accessのプロジェクトにインポートするには、
どのようにすればいいのでしょうか?

インポートされたモジュールは
access内の他の vbaのコードの領域に保存されるのでしょうか?

それともaccessの実行環境であるローカルのPC内に保存されるのでしょうか?

ちなみに、自作のvbaのコードのうち、
他のファイルでも利用したい場合、
たとえば共通の文字列のフォーマットへの変換など

そのvbaのコードをモジュールとして保存できるのでしょうか?

    ↓

### **VBAモジュールのインポート方法(Access)**

外部サイト(GitHubなど)からダウンロードしたVBAモジュール
(`.bas` ファイル)をAccessにインポートする方法は以下の通りです。

#### **手動でインポートする方法**
1. **AccessのVBAエディタを開く**

   - `Alt + F11` を押してVBAエディタを開きます。

2. **インポートする**

   - VBAエディタの左側にある「プロジェクトエクスプローラー」で
    `Modules` を右クリック  
   
   - 「ファイルのインポート」を選択  
   - `.bas` ファイルを選択してインポート

これで、そのモジュールが **AccessのVBAプロジェクト内** に取り込まれます。

---

#### **VBAコードからインポートする方法**

VBAのコードを使って `.bas` ファイルをインポートすることも可能です。

```vba

Public Sub ImportVbaModule()

    Application.VBE.ActiveVBProject
    .VBComponents.Import "C:\Path\To\YourModule.bas"
    
End Sub
```
※ `C:\Path\To\YourModule.bas` を
    実際のファイルパスに変更してください。

---

### **インポートされたモジュールの保存先**
インポートされたVBAモジュールは、**Accessのプロジェクト
(`.accdb` / `.mdb`)内に保存**されます。

そのため、Accessファイルを別のPCに移動すると、
モジュールも一緒に移動します。
ただし、**VBAのコード自体はPCのローカルフォルダには直接保存されません。**

---

### **共通のVBAコードを他のファイルでも利用する方法**

他のAccessファイルでも使いたいVBAコードがある場合、
次の方法で再利用できます。

#### **① `.bas` ファイルとして保存**
1. VBAエディタで共通のモジュールを右クリックし、「ファイルのエクスポート」を選択  
2. `.bas` ファイルとして保存
3. 他のAccessプロジェクトで **インポート** すれば再利用可能


#### **② Accessの「ライブラリデータベース」として利用**

共通のVBAコードを含む **別のAccessファイル
    (ライブラリデータベース)** を作成し、
    
それを参照設定することで使うこともできます。

1. VBAコードを含む **共通のAccessファイル
    (例:CommonLib.accdb)** を作成

2. そのAccessファイルを
        `C:\Path\To\CommonLib.accdb` に保存

3. 他のAccessプロジェクトで `Alt + F11` を押してVBAエディタを開く

4. `ツール` → `参照設定` → `参照` をクリックし、
    `CommonLib.accdb` を選択

これで、共通の関数を他のプロジェクトでも利用できます。

---

### **まとめ**
✅ **ダウンロードしたVBAモジュール(`.bas`)は
    手動またはVBAコードでインポート可能**
 
✅ **インポートされたモジュールはAccessのプロジェクト
        (`.accdb`)内に保存**  

✅ **共通のVBAコードは `.bas` としてエクスポートするか、
ライブラリデータベース化して使い回せる**

Access内でモジュールを管理しつつ、
他のファイルでも共通のコードを活用する方法を試してみてください!

### **VBAモジュールのインポート方法(Access)**

外部サイト(GitHubなど)からダウンロードしたVBAモジュール
(`.bas` ファイル)をAccessにインポートする方法は以下の通りです。


#### **手動でインポートする方法**

1. **AccessのVBAエディタを開く**
   - `Alt + F11` を押してVBAエディタを開きます。


2. **インポートする**

   - VBAエディタの左側にある「プロジェクトエクスプローラー」で
    `Modules` を右クリック
   
   - 「ファイルのインポート」を選択  
   
   - `.bas` ファイルを選択してインポート

これで、そのモジュールが
**AccessのVBAプロジェクト内** に取り込まれます。

---

#### **VBAコードからインポートする方法**

VBAのコードを使って `.bas` ファイルをインポートすることも可能です。


```vba

Public Sub ImportVbaModule()

    Application.VBE.ActiveVBProject
        .VBComponents.Import "C:\Path\To\YourModule.bas"
    
End Sub
```
※ `C:\Path\To\YourModule.bas` を
実際のファイルパスに変更してください。

---

### **インポートされたモジュールの保存先**

インポートされたVBAモジュールは、
**Accessのプロジェクト(`.accdb` / `.mdb`)内に保存**されます。

そのため、Accessファイルを別のPCに移動すると、
モジュールも一緒に移動します。
ただし、**VBAのコード自体はPCのローカルフォルダには直接保存されません。**

---

### **共通のVBAコードを他のファイルでも利用する方法**

他のAccessファイルでも使いたいVBAコードがある場合、
次の方法で再利用できます。

#### **① `.bas` ファイルとして保存**

1. VBAエディタで共通のモジュールを右クリックし、「ファイルのエクスポート」を選択  
2. `.bas` ファイルとして保存
3. 他のAccessプロジェクトで **インポート** すれば再利用可能

#### **② Accessの「ライブラリデータベース」として利用**

共通のVBAコードを含む
**別のAccessファイル(ライブラリデータベース)** を作成し、
それを参照設定することで使うこともできます。


1. VBAコードを含む
    **共通のAccessファイル(例:CommonLib.accdb)** を作成

2. そのAccessファイルを
    `C:\Path\To\CommonLib.accdb` に保存

3. 他のAccessプロジェクトで
    `Alt + F11` を押してVBAエディタを開く

4. `ツール` → `参照設定` → `参照` をクリックし、
    `CommonLib.accdb` を選択

これで、共通の関数を他のプロジェクトでも利用できます。

---

### **まとめ**
✅ **ダウンロードしたVBAモジュール
    (`.bas`)は手動またはVBAコードでインポート可能**
 
✅ **インポートされたモジュールは
    Accessのプロジェクト(`.accdb`)内に保存**
 
✅ **共通のVBAコードは `.bas` としてエクスポートするか、
    ライブラリデータベース化して使い回せる**


Access内でモジュールを管理しつつ、
他のファイルでも共通のコードを活用する方法を試してみてください!






コメント