大体でIT
大体でIT
  • 134
  • 739 202
【VBA】連想配列でクロス集計を高速化【Dictionaryを使う】
■目次
00:09 高速でクロス集計表を作成したい
01:49 VBAコードを作成
01:58 └ 連想配列の特徴
03:07 └ 連想配列でクロス集計表を作成する手順
04:54 └ 完成版を確認
05:57 └ 連想配列を使ってクロス集計表を作成
19:40 └ 大量データからクロス集計表を作成
22:14 └ 配列とFotとIfを使った方法と比較
23:56 おわりに
■VBAコードを確認する↓
daitaideit.com/vba-make-cross-tabulation-at-high-speed/
■関連する動画を確認する↓
・数式の取得とコピー、入力をする
 th-cam.com/video/zEKW2t5PYz4/w-d-xo.html
・連想配列を使って高速で検索
 th-cam.com/video/9RMXaRsemTo/w-d-xo.html
・連想配列を使って複数条件で検索
 th-cam.com/video/MWhkHSUP8yo/w-d-xo.html
・連想配列で複数項目を取得
 th-cam.com/video/DRG9_mhLV0E/w-d-xo.html
・COUNTIFS関数を高速化する
 th-cam.com/video/L9E_MogJD6Q/w-d-xo.html
・SUMIF関数を高速化する
 th-cam.com/video/WxI7ny7GtT0/w-d-xo.html
・SUMIFS関数を高速化する
 th-cam.com/video/LtlM8rHOWbc/w-d-xo.html
・連想配列でクロス集計表の作成を高速化 ←こちらの動画
 th-cam.com/video/292H31bIO-w/w-d-xo.html
#ExcelVBA
#クロス集計表
#連想配列
#高速化
มุมมอง: 7 393

วีดีโอ

【VBA】選択したセル範囲に矢印を引く【.Shapes.AddLineを使います】
มุมมอง 2.5K2 ปีที่แล้ว
■目次 01:00 選択したセル範囲に矢印を引く 01:38 VBAコードを作成 01:45 └ 線を追加 03:04 └ 線の太さを設定 03:46 └ 線の色を設定 04:52 └ 終点の矢印を設定 07:30 └ 矢印の始点と終点を設定 10:31 └ ショートカットキーに登録 11:29 おわりに Excel VBAを使って、線や矢印を引くには「.Shapes.AddLine」を使うとできます。矢印を引くには、線を引いたあとに、矢印を設定するとできます。VBAを使って、線や矢印を自動で引けるようにしていきましょう。 ■VBAコードを確認する↓ daitaideit.com/vba-draw-line-and-arrow/ #ExcelVBA #矢印を引く
【VBA】別シートや別ブックに転記【WorksheetとWorkbooksを使う】
มุมมอง 41K2 ปีที่แล้ว
■目次 00:37 同じシートに値を転記 02:11 別シートに値を転記 06:14 別ブックに値を転記 11:22 別ブックを開いて転記 15:26 別ブックを開いて上書き保存して閉じる 18:06 おわりに Excel VBAを使って、別シートや別ブックに転記したい場合は、「Worksheets」や「Workbooks」を使います。「Worksheets」や「Workbooks」を省略した場合は、「ActiveSheet」や「ActiveWorkbook」になります。別シートや別ブックに転記する方法について、マスターしていきましょう。 ■VBAコードを確認する↓ daitaideit.com/vba-copy-sheet-book/ ■関連する動画を確認する↓ ・別ブックのセルの値を取得  th-cam.com/video/LGbU78cc-NM/w-d-xo.html ・別ブッ...
【VBA】請求書から台帳へ自動転記【一覧形式にまとめると集計しやすいです】
มุมมอง 9K2 ปีที่แล้ว
■目次 00:49 請求書から台帳に自動転記したい 01:31 VBAコードを作成 01:38 └ 1つの請求書を台帳に自動転記 07:01 └ 複数の請求書を台帳に自動転記 08:44 └ 空白データを削除する 12:05 └ エラーを回避して空白データを削除 13:35 おわりに Excel VBAを使って、請求書から台帳へ自動転記する方法について、ご紹介します。請求書データのみがあって台帳がない場合は、一覧形式の台帳を作成すると、集計作業がやりやすくなります。台帳がない場合は、一覧形式のデータを作成して集計作業ができるようにしていきましょう。 ・ファイルパスの取得方法  th-cam.com/video/dKGdFN1sVy8/w-d-xo.html ・名前を付けて保存  th-cam.com/video/DgbmXUNJxH4/w-d-xo.html ・シートを別ブックで保存...
【VBA】差し込み印刷をする【VLOOKUPで取得してPrintOutをループする】
มุมมอง 27K2 ปีที่แล้ว
■目次 00:13 差し込み印刷を自動化したい 02:16 VBAコードを作成 02:23 └ フォームを作成 03:02 └ VLOOKUP関数で値を取得 11:10 └ PrintOutをForでループする 19:11 印刷する際の問題点 19:18 └ 印刷する際の問題点 20:05 └ 複数シートを一括で印刷する 28:46 おわりに ■VBAコードを確認する↓ daitaideit.com/vba-merge-print/ ■関連する動画を確認する↓ ・ファイルパスの取得方法  th-cam.com/video/dKGdFN1sVy8/w-d-xo.html ・名前を付けて保存  th-cam.com/video/DgbmXUNJxH4/w-d-xo.html ・シートを別ブックで保存  th-cam.com/video/31QABUq6o5o/w-d-xo.html ・複...
【VBA】社員名簿から名前で絞りこみ検索をする【部分一致で抽出してForとIfで検索する】
มุมมอง 2.5K2 ปีที่แล้ว
■目次 00:35 社員名簿から名前で絞りこみ検索したい 01:35 VBAコードを作成 01:58 └ 検索フォームを作成 03:28 └ 絞りこむVBAコードを作成 07:53 └ Changeイベントを作成 09:47 └ 入力規則のリストを作成 11:37 └ SendKeysを使う 13:46 └ 検索するVBAコードを作成 17:37 └ Changeイベントを作成 18:41 おわりに ■VBAコードを確認する↓ daitaideit.com/vba-filter-and-search-from-employee-list/ ■関連する動画を確認する↓ ・条件一致した値を抽出  th-cam.com/video/vn7io2bEc3E/w-d-xo.html ・複数ブックから条件一致した値を抽出  th-cam.com/video/nn515CscZBE/w-d-xo....
【VBA】コンボボックスで絞りこみ検索する【部分一致で抽出してForとIfで検索する】
มุมมอง 3.8K2 ปีที่แล้ว
■目次 00:40 コンボボックスで絞り込み検索したい 01:49 VBAコードを作成 01:59 └ 検索フォームを作成 03:09 └ ユーザーフォームを作成 04:29 └ 条件を絞り込む 14:11 └ データを検索する 18:49 └ ボタンを追加 20:02 おわりに ■VBAコードを確認する↓ daitaideit.com/vba-filter-and-search-by-combobox/ ■関連する動画を確認する↓ ・条件一致した値を抽出  th-cam.com/video/vn7io2bEc3E/w-d-xo.html ・複数ブックから条件一致した値を抽出  th-cam.com/video/nn515CscZBE/w-d-xo.html ・日付でデータを抽出する  th-cam.com/video/nxywWE-mmfg/w-d-xo.html ・ユーザーフォー...
【VBA】ユーザーフォームで絞りこみ検索をする【部分一致で抽出してForとIfで値を取得】
มุมมอง 4.6K2 ปีที่แล้ว
■目次 00:38 ユーザーフォームで絞り込み検索をしたい 01:44 VBAコードを作成 02:04 └ 検索用シートを作成 03:17 └ ユーザーフォームを作成 04:09 └ テキストボックスから部分一致で抽出 13:52 └ リストボックスから値を検索 19:06 └ 起動用ボタンを作成 20:09 おわりに ■VBAコードを確認する↓ daitaideit.com/vba-vba-filter-and-search-by-userform/ ■関連する動画を確認する↓ ・条件一致した値を抽出  th-cam.com/video/vn7io2bEc3E/w-d-xo.html ・複数ブックから条件一致した値を抽出  th-cam.com/video/nn515CscZBE/w-d-xo.html ・日付でデータを抽出する  th-cam.com/video/nxywWE-m...
【VBA】条件を絞りこんで検索をする【部分一致で抽出してForとIfで値を取得】
มุมมอง 2.3K2 ปีที่แล้ว
■目次  00:46 条件を絞りこんで検索したい 01:33 VBAコード作成 02:07 └ フォームを作成 03:24 └ 部分一致で値を抽出 07:43 └ プルダウンリストを設定 09:00 └ Changeイベントを作成 10:28 └ 値を検索する 13:35 └ Changeイベントを作成 14:55 おわりに ■VBAコードを確認する↓ daitaideit.com/vba-filter-and-search/ ■関連する動画を確認する↓ ・条件一致した値を抽出  th-cam.com/video/vn7io2bEc3E/w-d-xo.html ・複数ブックから条件一致した値を抽出  th-cam.com/video/nn515CscZBE/w-d-xo.html ・日付でデータを抽出する  th-cam.com/video/nxywWE-mmfg/w-d-xo.ht...
【VBA】複数ブックから値を抽出【DirでループしてForとIfで抽出する】
มุมมอง 7K2 ปีที่แล้ว
■目次 00:54 複数ブックから条件一致する値を抽出したい 01:52 VBAコードを作成 02:00 └ 1つのブックから値を抽出 07:35 └ Dir関数を使って1つのブックから値を抽出 08:58 └ Dir関数を使って複数ブックから値を抽出 11:17 └ InputBoxを使って検索する値を入力 12:47 └ ボタンを作成 13:37 おわりに ■VBAコードを確認する↓ daitaideit.com/vba-extract-from-multiple-book/ ■関連する動画を確認する↓ ・条件一致した値を抽出  th-cam.com/video/vn7io2bEc3E/w-d-xo.html ・複数ブックから条件一致した値を抽出 ←こちらの動画  th-cam.com/video/nn515CscZBE/w-d-xo.html ・日付でデータを抽出する  th-...
【VBA】ForとIfを使えば大体自動化できる【取得や転記、抽出、カウント、加算をする】
มุมมอง 9K2 ปีที่แล้ว
■目次 00:06 ForとIfを使ってデータの操作をする 00:50 └ データを取得する 02:56 └ データを転記する 04:40 └ データを抽出する 07:13 └ データをカウントする 09:02 └ データを加算する 11:09 おわりに ■VBAコードを確認する↓ daitaideit.com/vba-automate-by-for-and-if/ ■関連する動画を確認する↓ ・条件一致した値を抽出  th-cam.com/video/vn7io2bEc3E/w-d-xo.html ・複数ブックから条件一致した値を抽出  th-cam.com/video/nn515CscZBE/w-d-xo.html ・日付でデータを抽出する  th-cam.com/video/nxywWE-mmfg/w-d-xo.html ・ユーザーフォームで値を抽出  th-cam.com/v...
【VBA】配列を使って値の抽出を高速化する【2次元配列を使えば簡単です】
มุมมอง 20K2 ปีที่แล้ว
■目次 01:01 配列を使って値の抽出を高速化したい 01:44 Cellsで1つずつ値を抽出する 04:45 Cellsを使う方法を「配列」に置き換える 08:30 おわりに ■VBAコードを確認する↓ daitaideit.com/vba-extract-value-at-high-speed-by-array/ ■関連する動画を確認する↓ ・条件一致した値を抽出  th-cam.com/video/vn7io2bEc3E/w-d-xo.html ・複数ブックから条件一致した値を抽出  th-cam.com/video/nn515CscZBE/w-d-xo.html ・配列を使って値の抽出を高速化する ←こちらの動画  th-cam.com/video/QOEWZapoE-g/w-d-xo.html ・日付でデータを抽出する  th-cam.com/video/nxywWE-m...
【VBA】フォルダとファイルの一覧を取得してハイパーリンクを設定する
มุมมอง 6K2 ปีที่แล้ว
■目次 00:53 フォルダとファイルの一覧を取得してハイパーリンクを設定 02:30 VBAコードを作成 02:45 └ ファイル一覧を取得 04:12 └ フォルダ一覧を取得 04:34 └ すべてのフォルダ一覧を取得 07:00 └ すべてのファイル一覧を取得 07:56 └ ファイル一覧とフォルダ一覧をシートに入力 11:17 └ セルの値からフォルダパスを指定 12:49 └ ハイパーリンクを設定 14:30 └ フォルダ選択用ダイアログを使う 17:51 おわりに ■VBAコードを確認する↓ daitaideit.com/vba-make-folder-file-list/ ■関連する動画を確認する↓ ・フォルダ・ファイルの操作まとめ  th-cam.com/video/f8VTy5SCV20/w-d-xo.html ・ファイル・フォルダの存在チェック  th-cam.c...
【VBA】条件を指定して複数ブックをまとめる【InStrで条件を指定する】
มุมมอง 1.6K2 ปีที่แล้ว
■目次 00:45 条件を指定して複数ブックをまとめたい 01:36 VBAコードを作成 01:47 └ 1つの別ブックから値を取得 06:43 └ Dir関数を使って1つのブックの値を取得 07:58 └ Dir関数を使って複数ブックをループして値を取得 10:22 └ 条件を指定して複数ブックの値を取得 12:11 おわりに ■VBAコードを確認する↓ daitaideit.com/vba-merge-specific-multi-book/ ■関連する動画を確認する↓ ・別ブックのセルの値を取得  th-cam.com/video/LGbU78cc-NM/w-d-xo.html ・別ブックを参照する  th-cam.com/video/FSS94HnW3Dk/w-d-xo.html ・複数シートを1つにまとめる  th-cam.com/video/RI2UGvt8-g4/w-d...
【VBA】入出力シートからデータの取得と転記をする【ForとIfで検索する】
มุมมอง 4.9K2 ปีที่แล้ว
■目次 00:46 入出力シートからデータの取得と転記をしたい 01:47 VBAコードを作成 02:06 └ 入出力フォームを作成 03:17 └ 入出力シートからデータを取得 06:56 └ リストを作成する 08:19 └ Changeイベントを使う 10:13 └ 入出力シートからデータを転記 13:25 └ ボタンを追加 14:40 おわりに ■VBAコードを確認する↓ daitaideit.com/vba-get-write-data/ ■関連する動画を確認する↓ ・データの取得と転記をする ←こちらの動画  th-cam.com/video/Dpnq8q5qPJ4/w-d-xo.html ・データベースの操作  th-cam.com/video/jQlgfWIAsSg/w-d-xo.html ・ユーザーフォームとデータベースを連携  th-cam.com/video/N...
【VBA】複数ブックを選択してまとめる【GetOpenFilename使う】
มุมมอง 2.6K2 ปีที่แล้ว
【VBA】複数ブックを選択してまとめる【GetOpenFilename使う】
【VBA】選択したフォルダ内のブックをまとめる【FileDialogとDir、Copyを使う】
มุมมอง 4K2 ปีที่แล้ว
【VBA】選択したフォルダ内のブックをまとめる【FileDialogとDir、Copyを使う】
【VBA】月ごとのブックを1つにまとめる【DirとCopyを使う】
มุมมอง 3.2K2 ปีที่แล้ว
【VBA】月ごとのブックを1つにまとめる【DirとCopyを使う】
【VBA】雛型を使って取引先ごとに別シート転記【DictionaryとCopyを使う】
มุมมอง 9K2 ปีที่แล้ว
【VBA】雛型を使って取引先ごとに別シート転記【DictionaryとCopyを使う】
【VBA】ユーザーフォームで検索して値を抽出する【AutoFilterとCopyを使う】
มุมมอง 8K2 ปีที่แล้ว
【VBA】ユーザーフォームで検索して値を抽出する【AutoFilterとCopyを使う】
【VBA】社員名簿から名前で検索して抽出する【AutoFilterとCopyを使う】
มุมมอง 5K2 ปีที่แล้ว
【VBA】社員名簿から名前で検索して抽出する【AutoFilterとCopyを使う】
【VBA】日付でデータを抽出する【AutoFilterとCopyを使う】
มุมมอง 9K2 ปีที่แล้ว
【VBA】日付でデータを抽出する【AutoFilterとCopyを使う】
【VBA】チェックしたデータを別シート転記【Copyをループして転記する】
มุมมอง 9K2 ปีที่แล้ว
【VBA】チェックしたデータを別シート転記【Copyをループして転記する】
【VBA】部署毎に別シート転記【AutoFilterで抽出して、Copyする】
มุมมอง 4.1K2 ปีที่แล้ว
【VBA】部署毎に別シート転記【AutoFilterで抽出して、Copyする】
【VBA】フィルタの結果をコピーする【オートフィルタとCopyを使う】
มุมมอง 4.4K2 ปีที่แล้ว
【VBA】フィルタの結果をコピーする【オートフィルタとCopyを使う】
【VBA】取引先ごとに別シート転記【AutoFilterとCopyをループする】
มุมมอง 4.4K2 ปีที่แล้ว
【VBA】取引先ごとに別シート転記【AutoFilterとCopyをループする】
【VBA】月別に別シート転記【AutoFilterで抽出して、Copyを使う】
มุมมอง 2.6K2 ปีที่แล้ว
【VBA】月別に別シート転記【AutoFilterで抽出して、Copyを使う】
【VBA】重複しないリストを作成【Dictionaryを使います】
มุมมอง 3K2 ปีที่แล้ว
【VBA】重複しないリストを作成【Dictionaryを使います】
【VBA】シートを並び替える【バブルソートを使ってMoveで移動する】
มุมมอง 1.2K2 ปีที่แล้ว
【VBA】シートを並び替える【バブルソートを使ってMoveで移動する】
【VBA】結合セルの行の高さを自動調整する【作業セルで自動調整する】
มุมมอง 1.6K2 ปีที่แล้ว
【VBA】結合セルの行の高さを自動調整する【作業セルで自動調整する】

ความคิดเห็น

  • @ichirospecial
    @ichirospecial 26 วันที่ผ่านมา

    別ブックにパスワードが設定されている場合、別ブックを開かずに参照するにはどうすれば良いでしょうか? Cells(1,1)=“=‘C:¥Users¥name¥Desktop¥[test.xlsx]Sheet1’!$A$1” , Password:=“1234” ではエラーになってしまいます。

  • @ハンセン-n7z
    @ハンセン-n7z หลายเดือนก่อน

    質問させて下さい。 例えば同じブック内の複数シートではなく、a.b.cの別ファイルから同じように表題より下の範囲を1つのシートにまとめていきたい場合はsheetの部分をbookに変えればいいのでしょうか?

  • @taichirox
    @taichirox หลายเดือนก่อน

    ファイル名に日付を含むファイルから日付を取り出したいのですが、色々なパターンに対応するために正規表現を使うらしいことがわかったのですが、正規表現がよくわかりません。機会がありましたらぜひ解説動画お願いします。😢

  • @taichirox
    @taichirox 2 หลายเดือนก่อน

    いつも参考にさせてもらっています。日誌を作成しようと思うのですが、今日の業務Aは誰、業務Bは誰、というデータを勤務表から抽出して日誌に反映させたいです。こういうこともdictionaryを使ってできるのですよね?機会がありましたらそのような動画をお願いします。

  • @sk-12-10
    @sk-12-10 2 หลายเดือนก่อน

    いつも参考にさせていただいております。 質問なのですが、参照先の商品と価格の列が離れていてもdictionaryでできるものですか?

  • @方明日
    @方明日 2 หลายเดือนก่อน

    わかりやすく説明です

  • @taichirox
    @taichirox 2 หลายเดือนก่อน

    最後の配列に参照セルの数式を入れるのはすごくいい方法ですね。やってみたらとても速かったです。あと質問ですが、シートに書き出す前に値を取得して別の配列にすることはできますか?必要なものをDictionaryに取り込んでから書き出したいのですが。

  • @t-rick-samevys637
    @t-rick-samevys637 2 หลายเดือนก่อน

    これでもかってぐらい丁寧でわかりやすい説明でほんと助かりました

  • @yukim6347
    @yukim6347 4 หลายเดือนก่อน

    日付を付けて拡張子を変更して保存したい😢

  • @もじじ-n7b
    @もじじ-n7b 4 หลายเดือนก่อน

    こんにちは質問失礼致します 同じように入力して実行をするとWorksheetクラスのCheckBoxプロパティを取得できませんとエラーが出て、チェック&iの列が黄色になってしまいます。 大変恐縮ですが教えていただけると幸いです。

  • @Tomoniumu
    @Tomoniumu 5 หลายเดือนก่อน

    助かりました!ありがとうございます!

  • @mari-kf5mc4gc3x
    @mari-kf5mc4gc3x 5 หลายเดือนก่อน

    取引先別でなおかつ品名別で請求書を作りたいですが難しいでしょうか?

    • @IT-gx8sf
      @IT-gx8sf 5 หลายเดือนก่อน

      コメントありがとうございます! 取引先別で、品目別で作成したい場合は、取引先リストと品目リストを作成することでできます。 VBAコードは次のようになります。 Sub TEST1() '取引先リスト取得 Sheets("DB").Range("A1").CurrentRegion.Columns(1).Copy Sheets("DB").Range("F1") Sheets("DB").Range("F1").CurrentRegion.RemoveDuplicates 1, xlYes Dim List1, List2 With Sheets("DB").Range("F1").CurrentRegion.Offset(1, 0) List1 = .Resize(.Rows.Count - 1) End With Sheets("DB").Range("F1").CurrentRegion.ClearContents '品目リスト取得 Sheets("DB").Range("A1").CurrentRegion.Columns(2).Copy Sheets("DB").Range("F1") Sheets("DB").Range("F1").CurrentRegion.RemoveDuplicates 1, xlYes With Sheets("DB").Range("F1").CurrentRegion.Offset(1, 0) List2 = .Resize(.Rows.Count - 1) End With Sheets("DB").Range("F1").CurrentRegion.ClearContents For i = 1 To UBound(List1, 1) For j = 1 To UBound(List2, 1) '請求書クリア Sheets("請求書").Range("A2,A10:E12").ClearContents '取引先ごとで品目ごとに抽出 Sheets("DB").Range("A1").AutoFilter 1, List1(i, 1) '取引先でフィルタ Sheets("DB").Range("A1").AutoFilter 2, List2(j, 1) '品目でフィルタ Sheets("DB").Range("A1").CurrentRegion.Copy Sheets("DB").Range("F1") Sheets("DB").Range("A1").AutoFilter Dim A, B, C, E '抽出データがある場合 If WorksheetFunction.Subtotal(103, Range("F1").EntireColumn) > 1 Then '取引先を転記 Sheets("請求書").Range("A2") = Sheets("DB").Range("F2") '品目以下を転記 With Sheets("DB").Range("F1").CurrentRegion.Offset(1, 0) A = .Resize(.Rows.Count - 1).Columns(2) B = .Resize(.Rows.Count - 1).Columns(3) C = .Resize(.Rows.Count - 1).Columns(4) E = .Rows.Count - 1 End With Sheets("請求書").Range("A10").Resize(E) = A Sheets("請求書").Range("D10").Resize(E) = B Sheets("請求書").Range("E10").Resize(E) = C 'PDFで保存 With Sheets("請求書") .ExportAsFixedFormat 0, ThisWorkbook.Path & "\" & .Range("A2") & "_" & .Range("A10") & ".pdf" End With End If '抽出データをクリア Sheets("DB").Range("F1").CurrentRegion.ClearContents Next Next End Sub 手順としては、次のようになります。 ・取引先リストを作成(AAA~CCC) ・品目リストを作成(デスクトップPC、ノートパソコン、マウス) ・取引先と品目リストでそれぞれループ ・請求書シートのデータをクリア ・取引先と品目ごとにデータを抽出 ・取引先と品目以下を請求書シートに転記 ・PDFを作成 ・抽出データをクリア 「取引先と品目リストを作成する」ところと、「取引先と品目ごとにデータを抽出する」ところがポイントとなります。 実行すると、 AAA_デスクトップPC.pdf AAA_ノートパソコン.pdf AAA_マウス.pdf BBB_デスクトップPC.pdf BBB_ノートパソコン.pdf BBB_マウス.pdf CCC_デスクトップPC.pdf CCC_ノートパソコン.pdf CCC_マウス.pdf というように、同フォルダに上記のファイルが作成されます。 参考になればと思います(^^)

    • @IT-gx8sf
      @IT-gx8sf 5 หลายเดือนก่อน

      一部VBAコードに訂正がありました。正しくは下記となります。 Subtotal関数の引数内で、シートを指定しておりませんでしたので、シートを指定しております。 Sub TEST1() '取引先リスト取得 Sheets("DB").Range("A1").CurrentRegion.Columns(1).Copy Sheets("DB").Range("F1") Sheets("DB").Range("F1").CurrentRegion.RemoveDuplicates 1, xlYes Dim List1, List2 With Sheets("DB").Range("F1").CurrentRegion.Offset(1, 0) List1 = .Resize(.Rows.Count - 1) End With Sheets("DB").Range("F1").CurrentRegion.ClearContents '品目リスト取得 Sheets("DB").Range("A1").CurrentRegion.Columns(2).Copy Sheets("DB").Range("F1") Sheets("DB").Range("F1").CurrentRegion.RemoveDuplicates 1, xlYes With Sheets("DB").Range("F1").CurrentRegion.Offset(1, 0) List2 = .Resize(.Rows.Count - 1) End With Sheets("DB").Range("F1").CurrentRegion.ClearContents For i = 1 To UBound(List1, 1) For j = 1 To UBound(List2, 1) '請求書クリア Sheets("請求書").Range("A2,A10:E12").ClearContents '取引先ごとで品目ごとに抽出 Sheets("DB").Range("A1").AutoFilter 1, List1(i, 1) '取引先でフィルタ Sheets("DB").Range("A1").AutoFilter 2, List2(j, 1) '品目でフィルタ Sheets("DB").Range("A1").CurrentRegion.Copy Sheets("DB").Range("F1") Sheets("DB").Range("A1").AutoFilter Dim A, B, C, E '抽出データがある場合 If WorksheetFunction.Subtotal(103, Sheets("DB").Range("F1").EntireColumn) > 1 Then '取引先を転記 Sheets("請求書").Range("A2") = Sheets("DB").Range("F2") '品目以下を転記 With Sheets("DB").Range("F1").CurrentRegion.Offset(1, 0) A = .Resize(.Rows.Count - 1).Columns(2) B = .Resize(.Rows.Count - 1).Columns(3) C = .Resize(.Rows.Count - 1).Columns(4) E = .Rows.Count - 1 End With Sheets("請求書").Range("A10").Resize(E) = A Sheets("請求書").Range("D10").Resize(E) = B Sheets("請求書").Range("E10").Resize(E) = C 'PDFで保存 With Sheets("請求書") .ExportAsFixedFormat 0, ThisWorkbook.Path & "\" & .Range("A2") & "_" & .Range("A10") & ".pdf" End With End If '抽出データをクリア Sheets("DB").Range("F1").CurrentRegion.ClearContents Next Next End Sub

  • @かんかい糖尿寛解
    @かんかい糖尿寛解 6 หลายเดือนก่อน

    パワークエリでこの使い方が知りたかったので助かりました!他の動画じゃこれの説明ないんですよね… ありがとうございます!

  • @あんぼうあんぼう
    @あんぼうあんぼう 7 หลายเดือนก่อน

    少し質問なのですが、 1列を対象として、データ範囲をヘッダ行+1行と末尾からend(xlup)とかで拾った行の範囲が1行だった場合、つまり結果として範囲が1セルだった場合、範囲.valueを取得すると、配列ではなくてそこに入った値が取得されてしまいますよね? 範囲.Cells.Countで1であればという判断で処理分けしてコードを書いてもいいのですが、なんかしっくり来ません。 処理分けしないで書く方法ってないですか?

  • @chanoman1203
    @chanoman1203 7 หลายเดือนก่อน

    セル範囲同士をイコールで代入する事は、できないのでしょうか?

  • @Gehogeho3110
    @Gehogeho3110 7 หลายเดือนก่อน

    参考になりました。多数(Page001~Page256等)のPDFをページ毎にExcelシート(Sheet1~Sheet256等)に分けて読み込むにはどの様にしたら良いのでしょうか?

  • @ポイポイドラドラ
    @ポイポイドラドラ 8 หลายเดือนก่อน

    いつも、ありがとうございます。 とても参考になります。 大助かりです。

  • @teruohino9976
    @teruohino9976 8 หลายเดือนก่อน

    変数名が、「A」とか「B」ですと初心者にはわかりにくいです。変数の「A」?、セル番地の「A」?、抽出文字の「A」?。解説用のコードとはいえもう少しわかりやすくしていただくとありがたいです。

  • @hirorrro
    @hirorrro 8 หลายเดือนก่อน

    こんにちは 数式だとnullが0で帰ってくる様に思うのですが、解決方法ご存じですか?

    • @IT-gx8sf
      @IT-gx8sf 8 หลายเดือนก่อน

      コメントありがとうございます! 取得データがnullの場合には「0」ではなく、「空欄」にしたい場合は、次のようにIF文を使うといいかと思います。 =IF([TEST.xlsx]Sheet1!A1="","",[TEST.xlsx]Sheet1!A1) 空欄の場合は空欄を入力して、それ以外の場合は値を取得するという感じです。 参考になればと思います(^^)

    • @sm-su3gj
      @sm-su3gj 6 หลายเดือนก่อน

      コメント失礼いたします🙇‍♀️ このif関数は、VBAのどこに入力すればいいのでしょうか? 初歩的なところで申し訳ないです。。

  • @宏安念
    @宏安念 8 หลายเดือนก่อน

    項目を設定、取得する際にIndexや列挙体を必要することとなる配列を今回採用したのは何故でしょうか?

    • @IT-gx8sf
      @IT-gx8sf 8 หลายเดือนก่อน

      コメントありがとうございます! 連想配列のDictionaryが取得できる値は、アイテムの1つのみとなります。 今回は、Dictionaryを使って複数の項目を取得したかったので、配列と組み合わせて取得してみました。 Dictionaryへの登録方法は下記のようにしています。 ・Dictionaryのアイテムには連番を登録 ・アイテムの連番と配列の順番が一致するように複数の項目を配列に入力 Dictionaryを使って複数の項目を取得する方法は下記となります。 ・Dictionaryを検索してアイテムに登録した連番を取得 ・取得した連番を使って配列から複数の項目を取得 上記のような形でDictionaryと配列を組み合わせて複数の項目の設定と取得をしております。 参考になればと思います(^^)

    • @宏安念
      @宏安念 8 หลายเดือนก่อน

      すみません、質問が分かり辛かったですね。連想配列に積み立てるものに、何故複数項目を明示的に指定出来るユーザー定義型やクラスを使用しないでindexになる数値や、列挙体を別途指定しなければならない2次元配列を採用した意図は?と言うことをお聞きしたかったのです。

  • @ひきまさみ
    @ひきまさみ 8 หลายเดือนก่อน

    見積書をデータベース化しようと思っています。 複数シートを転記は不要ですが 紹介いただいた内容で試してみます。 ありがとうございました。 行き詰まったら 教えていただけると助かります😊

  • @鷲鷹応援団
    @鷲鷹応援団 8 หลายเดือนก่อน

    解り易いのですが、説明をゆっくり話して欲しい。🔰ですから。

    • @Skst_2
      @Skst_2 12 วันที่ผ่านมา

      スロー再生しなよ

  • @u_zu1122
    @u_zu1122 9 หลายเดือนก่อน

    再度質問です。よろしくお願いします。 Dim A Redim A(3) のように書くのは理解できたのですが、最初に Dim A as Long のように最初にDimで宣言した変数の型をVariant型以外にすると、Redimで配列にしてもエラーになるんですね。 Dim宣言した変数はVariant以外はダメなんですか?

  • @u_zu1122
    @u_zu1122 9 หลายเดือนก่อน

    質問です。初歩的な話ですが、よろしくお願いします。 動画内の解説では、Dim A Redim A(3) のように、最初にDImで変数を宣言し、Redimで再度 配列設定していますが、最初から Dim A(3) のように書くのは あまり好ましくないのでしょうか? それとも御行儀?のようなものですか?

    • @IT-gx8sf
      @IT-gx8sf 9 หลายเดือนก่อน

      コメントありがとうございます! 最初に「Dim A(3)」のように宣言した場合、あとのコードで「ReDim A(4)」のように配列の大きさを変更したい場合に、エラーとなってしまいます。 動画内では、配列の大きさを柔軟に変更できるようにするために、「Dim A」で宣言したあとに「ReDim A(3)」のようにコードを記載する方法にて、ご紹介させていただきました。 配列の大きさを変更することがない場合には、最初から「Dim A(3)」のように設定することで、コードの行数を減らすことができますので好ましいかと思います。 参考になればと思います(^^)

    • @u_zu1122
      @u_zu1122 9 หลายเดือนก่อน

      @@IT-gx8sf  どうもありがとうございます。知らなかったです!

    • @u_zu1122
      @u_zu1122 9 หลายเดือนก่อน

      @@IT-gx8sf どうもありがとうございます。知らなかったです!

    • @u_zu1122
      @u_zu1122 9 หลายเดือนก่อน

      @@IT-gx8sf どうもありがとうございます。知らなかったです!

  • @anmitsu7477
    @anmitsu7477 9 หลายเดือนก่อน

    このやり方で、割とデータ数あるシートを持った5つのブックを回したら重すぎて動かなくなりました。。。 ファイル開いたあと、シートの選択もFor eachで入れてるのですが、それが原因でしょうか? 配列変数を使っているのに早く処理できるはずですよね?😢

    • @IT-gx8sf
      @IT-gx8sf 9 หลายเดือนก่อน

      コメントありがとうございます! 解決する糸口としましては、 解決案① 取り込み先のブックが大きい場合に、取り込み先のブックを開いた状態で、VBAコードを実行すると、PCの性能によっては、動作が止まってしまうことがあります。 ですので、一旦、取り込み先のブックから必要なデータのみを、取り込み元のブックに転記して、取り込み先のブックを「閉じた後」に、操作すると動作するかもしれません。 解決案2 「シートの選択」と記載がありましたので、もしかすると、「Select」や「Active」のVBAコードを使用しているかと思いました。 「Select」や「Active」はVBA処理の中でも重い操作になりなります。 ですので、シート操作を「Sheets().」のように指定して、シートの選択を避けるVBAコードに変更することで、VBAコードが止まってしまうのを避けることができるかもしれません。 参考になればと思います(^^)

  • @コズカイ株投資
    @コズカイ株投資 9 หลายเดือนก่อน

    滑舌をもう少しはっきりと

  • @杉山-t6n
    @杉山-t6n 10 หลายเดือนก่อน

    はじめまして。 参考にしました。 初心者でやりたいことが出来ずループしています。 VBAは オートフィルターを使ってデータのみ別シートへ抽出コピー。 データのないところはコピーしないようにしました。 編集での実行では上手くいくのですが、それを登録したボタンを押すとデータのないところに全てのデータが反映されてしまいます。 編集で個々の動作がただしく動くことを確認し、ボタンに登録、クリックするとデータのない条件のシートには全てのデータが反映される繰り返しです。 また、別なシートにてボタンを作って登録したら成功しましたが、ボタン設置の何故シートが違うとマクロが上手く機能しないのでしょうか? これらの現象を解消することは出来るでしょうか?

    • @IT-gx8sf
      @IT-gx8sf 10 หลายเดือนก่อน

      コメントありがとうございます! もしかするとシートの指定をすると正しく動作するかもしれません。 例えば、「Cells(1,1)」とだけ指定した場合でも動作しますが、実際は「ActiveSheet.Cells(1,1)」となっています。なので、この場合は、実行するシートによって動作が異なってきます。 「Sheets("Sheet1").Cells(1,1)」や「Sheets("Sheet2").Cells(1,1)」のようにシートを指定すると実行するシートによらず同じような動作になるかと思います。 参考になればと思います(^^)

  • @じゅん-m9c
    @じゅん-m9c 10 หลายเดือนก่อน

    こんばんは、質問失礼致します。 どちらの解説の方でも全く同じ様に入力して挑戦しているのですが、「cell().resize()」のところでエラーとなってしまいます。最初は修正候補=が出たため、cell()の後の.を=に変えたのですが、次はresizeのsubまたはfunctionが定義されていません。となります。スペルミスかなと思いましたが確認しても間違っておらず全く分かりません。 大変恐縮ですが教えていただけると幸いです。よろしくお願いします。

    • @IT-gx8sf
      @IT-gx8sf 10 หลายเดือนก่อน

      コメントありがとうございます! 「.Resize」の部分の入力を確認するとうまくいくかもしれません。 「Resize」は省略して入力するので少し特殊です。 行や列を拡張しないのであれば入力を省略することができます。 例えば、「.Resize(3, 0)」であれば「.Resize(3)」と同じ、 「.Resize(0, 3)」であれば「.Resize( , 3)」と同じとなります。 .Resizeのカッコ内はカンマ「,」になります。 また、入力されましたVBAコードを記載いたただきますと、もしかすると原因を特定できるかもしれません。 参考になればと思います(^^)

  • @岩国結助
    @岩国結助 10 หลายเดือนก่อน

    日付の指定では、この動画はオススメ。かなり良いと思う。

  • @秋山庄一
    @秋山庄一 11 หลายเดือนก่อน

    動画大変役に立ちました、有難う御座いました。 お願いがあります、請求書シートに取引先を変えて転記し、商品を3行だけではなく 数行を使えたいのですが、よろしくご指導をお願いいたします。

  • @TAIRA633
    @TAIRA633 11 หลายเดือนก่อน

    大体でIT先生 いつもお世話になっております。 Worksheets("Sheet1").Copy こちらの処理で、まず新しいブックが出来るのですね。 知りませんでいた。解説のページがございましたら ご紹介ください。 ご教示ありがとうございます。

  • @yy-lh6id
    @yy-lh6id 11 หลายเดือนก่อน

    まさにこの解説を探しておりました! ありがとうございます!

  • @鈴木愛-b7z
    @鈴木愛-b7z ปีที่แล้ว

    はじめまして。 大体でITさんのおかげで仕事でマクロが活用できるようになりました。 いつも丁寧で分かりやすい動画をありがとうございます。 X LOOK UPやV LOOK UPを使用してDBから取り込み請求書を作成する場合、名前をつけてそれぞれの会社ごとのPDFを作成することは可能でしょうか? また、PDFの名前を複数セルから(例えば令和6年1月+会社名)取得することは可能でしょうか? まだまだ動画と動画の合わせ技にて自分でマクロに指示ができず、、 もし可能でしたら教えていただきたいです。 よろしくお願いします。

  • @shunsukesagawa1545
    @shunsukesagawa1545 ปีที่แล้ว

    ちょうふく

  • @zf7u9
    @zf7u9 ปีที่แล้ว

    とても時短になりました!ありがとうございます!!

  • @ebihamu
    @ebihamu ปีที่แล้ว

    非常に分かりやすかったです( ´∀` )ありがとうございます

  • @雑記-j7s
    @雑記-j7s ปีที่แล้ว

    大体ITさんのブログも知りたいことがわかりやすく書かれていていいです!

  • @aliceNR-z5x
    @aliceNR-z5x ปีที่แล้ว

    ファイル名または番号が不正です。というエラーはあります。解決法をお願い致します。

  • @田舎の苦労人
    @田舎の苦労人 ปีที่แล้ว

    大変参考になりました。ありがとうございました。一つ質問させて頂きます。抽出の結果を別シートに表示する方法を教えてください。よろしくお願いします。

  • @テスト-n3l4n
    @テスト-n3l4n ปีที่แล้ว

    まさにこれをやりたかっです!

  • @sotk5960
    @sotk5960 ปีที่แล้ว

    同じフォルダにある、全てのExcelブックの中の全てのシートを、バラバラのExcelブックで保存するマクロを知りたいです。 たとえば、1つのExcelブックに5つのシートがあり、同じようなExcelブックが10個あるとしたら、全ブック全シートをバラバラに、50のExcelブックを作成して保存するようなマクロです。

  • @内田貴博
    @内田貴博 ปีที่แล้ว

    VBAについてはじめて知りました。手作業でやっていたので業務改善できてます。 雛形が複数ページある場合、DBの値をどのようにしたら反映できるか教えて欲しいです。

  • @kimihikonakamura6794
    @kimihikonakamura6794 ปีที่แล้ว

    再帰処理と、For Each時の動きについてはこの動画が一番わかりやすかった。

  • @みっちゃん-i9p
    @みっちゃん-i9p ปีที่แล้ว

    経理の仕事で今年度の実績フォルダーと予算のフォルダーが存在し、今年の実績の数字が予算の目安の数字として転記にコードを入力していて 何行も数字がある場合はどのように指定すればよいのでしょうか?ご指導をお願いします。

  • @ゆきちゃん-n3t
    @ゆきちゃん-n3t ปีที่แล้ว

    自分用メモ 11:10

  • @JOHNDOEORIGIN
    @JOHNDOEORIGIN ปีที่แล้ว

    初歩的な質問で申し訳ありません。1人前の方の言うように、新規ブックは作成できるものの 、それに値が転記されず、元のシートの上部分に転記されてしまいます。 なにか他に必要な処置や条件があるのでしょうか?

    • @IT-gx8sf
      @IT-gx8sf ปีที่แล้ว

      コメントありがとうございます! もしかすると、実行するシートが「アンケートフォーム」のシート以外で実行しているかもしれません。 「アンケートフォーム」のシートをアクティブにした状態で実行するとうまくいくかもしれません。 「アンケートフォーム」のシートにボタンを設置して、そのボタンからマクロを実行すると「アンケートフォーム」のシートをアクティブシートにした状態で実行できますので、思ったとおりのマクロが実行できるかと思います。 参考になればと思います。 また、不明な点等ございましたら、ご連絡いただけたらと思います!

    • @JOHNDOEORIGIN
      @JOHNDOEORIGIN ปีที่แล้ว

      @@IT-gx8sf ご回答ありがとうございます! 試してみます!

    • @lewis155242
      @lewis155242 ปีที่แล้ว

      @@IT-gx8sf 横から失礼します。アンケートフォームにボタンを設置して実行してみましたが、やはり元のシートに転記されます。 アンケートフォームのシートをアクティブシートにするにはどのようにしたらいいでしょうか?

  • @reo728reo
    @reo728reo ปีที่แล้ว

    メモ 6:04 つみ 2次元目は2列分欲しい redim j0☑️ range以降は☑️

  • @pompompop61
    @pompompop61 ปีที่แล้ว

    複数の別ブックをそれぞれPDFへ変換するとき、Dir関数とワイルドカードを使ってフォルダー内の一つのデータを取得すると思いますが、その時に実行エラーファイル名、または番号が不正というメッセージが出てきてしまいます。 先生のVBA通りに記載しているのですが考えられる原因がわかれば教えていただけないでしょうか。

  • @majic208
    @majic208 ปีที่แล้ว

    こんばんは。これは、NASの共有フォルダでも実行することは、可能でしょうか?

    • @IT-gx8sf
      @IT-gx8sf ปีที่แล้ว

      コメントありがとうございます! FileSystemObjectを使えば、NASの共有フォルダでも実行可能です。

  • @星星-z7n
    @星星-z7n ปีที่แล้ว

    めっちゃ参考になりました! 2:09 自分用