Top> よくつかうプログラム

VBA通信教材申込み

VBA課題解決型実践塾セミナー内容

申込 ヤフーショッピング

よくつかうプログラム

(1)ネットワークのコンピュータのブック操作

外部データの合体

外部データの合体
東京・名古屋・福岡営業所のエクセルブックの処理

(2)文字検索

大量データ(ビッグデータ)から特定の文字が含まれているデータを抽出する

(3)食堂の計算

よくつかうプログラム

アマノ社等の業務システムから取り出した毎日の食堂の売上データ(CSV形式)をエクセルに変換する
エクセルを加工処理して給与奉行等のパッケージにインポートできるデータ(CSV形式)を作る

(4)メイクショップ納品書

メイクショップの注文データからカテゴリー(店)別の納品書を作成する

メイクショップ納品書

(5)フォルダー内のデータ置換

フォルダー内のデータ置換

(6)日付の変換関数

日付の変換関数

関数の作り方の勉強になります

(7)プログラムを短くしよう

プログラムの短縮

プログラムは短い方がわかりやすいし修正も容易になります。
基礎がわかればプログラムを短くする方法を考えていきましょう。

(8)VBAでつくるピポットテーブル

VBAでつくるピポットテーブル

ピポットテーブルはデータ分析ツールとしてエクセルでよく使われる作業です。
改良されて使いやすくなっていますが、データが追加になった場合は選択範囲を変更しなければなりません。
条件を入力して定型業務として使う場合はVBAで作らないと面倒です。

(9)エクセル関数の文字の置換

消費税が5%から8%に変わります。
エクセルの式の中に0.05の数字を使っている箇所が多数ある場合VBAで自動で見つけるサンプルを紹介します。

エクセル関数の文字の置換

(10)幼稚園の経理システム

現金出納帳から毎月の収入の部・支出の部を計算して予算対比する簡単なシステムです。
それでもエクセルで集計して収入の部・支出の部に転記する作業は時間がかかります。
今回はその作業をボタンひとつで合理化するプログラムです。

幼稚園の経理システム

(11)フォルダーの中にある特定の名前の付いているCSVファイルを1つのブックに集める

得意の名前の付いているCSVファイルを1つのブックに集めるプログラムです。
ファイルを指定したフォルダーにコピーするプログラムも参考にしてください。

今回はその作業をボタンひとつで合理化するプログラムです

フォルダーの中にある特定の名前の付いているCSVファイルを1つのブックに集める

(12)シートの合体印刷

各シートを一回で印刷したい時があります。
数行しかないデータのシートを1枚ずつ印刷するとみにくいばかりでなく、紙の無駄になります。
そのようなときに1枚にまとめて印刷できれば助かります。
発想の転換ですが各種シートを1枚の印刷用シートに合体してその印刷用シートのみを印刷すれば可能です。

シートの合体印刷

(13)複数の行の選択

データを部分検索するとき同じデータがあった場合どの行を選択するかはリストボックス のあるフォームを使えば便利です。 まゆみという文字を検索するには文字列の位置を返すInStr関数を使います。 InStr(Worksheets("名簿").Cells(i, 2), RTrim(Worksheets("入力シート").Cells(2, 2))) 戻り値が0でなければデータがあると判断します。 該当データが1件の場合はフォームを出す必要がありませんので件数を判断します。

複数の行の選択

(14)マクロの記録を使わない並び替えの部品

マクロの記録で作った並び替えを部品集に公開していますが、中身を理解せずに使っていると、困る時があります。
今回先頭行が並び変わっていない問題が発生しました。
集計をとった結果がうまくいかないので調べてみると原因がわかりました。
VBA実践塾の並び替えの部品は先頭行を使わない部品です。
先頭行を使わない範囲を設定しています。
エクセルで並び替えると先頭行を見出しとして使うにチェックが入っているかで変わってきます。
.Header = xlNoかxlYesを理解していれば問題ないのですが、マクロの記録を使わない部品を作りました。
少ないデータでは使えますが、大量データはスピードが遅いのでエクセルのソートを使ってください。

マクロの記録を使わない並び替えの部品

(15)2つのブックの差の取り出し

別のブックに同じ形式のシートがあります。
シートを比べて各セルの違いのあるセルに差を転記するプログラムを考えて見ましょう。

2つのブックの差の取り出し

(16)日付上中下変換関数を使った例
別のブックに同じ形式のシートがあります。
シートを比べて各セルの違いのあるセルに差を転記するプログラムを考えて見ましょう。

日付上中下変換関数

Sub 変換()
  Dim i As Long
  Dim lastrow As Long
  lastrow = Worksheets("元").Cells(Rows.Count, 1).End(xlUp).Row
  For i = 2 To lastrow
    Cells(i, 5) = 日付変換(Cells(i, 2))
  Next
End Sub
Function 日付変換(文字型日付 As String)
  Select Case Val(Mid(文字型日付, 9, 2))
    Case Is <= 10
      日付変換 = Str(Val(Mid(文字型日付, 6, 2))) & "上"
    Case Is <= 20
      日付変換 = Str(Val(Mid(文字型日付, 6, 2))) & "中"
    Case Else
      日付変換 = Str(Val(Mid(文字型日付, 6, 2))) & "下"
  End Select
End Function

先頭へ

 

 

塾長あいさつ
基本方針(考え方)
通信教育内容
課題解決セミナー内容
初心者基礎コース内容
カリキュラム・料金
案内地図・各種リンク
問合せ・申込み
アベノ塾
システムの内製化
アサイコンピュータACS
応用部品集(有料)
販売管理(事例)
財務管理(事例)
顧客管理(事例)
見積もり(事例)
給与(事例)
介護(事例)
ゴースト暗算(事例)
部品集(部品の基礎)
部品集(シート関連)
部品集(データベース)
部品集(セル関連)
部品集(関数)
部品集(フォーム関連)
部品集(ブック関連)
部品集(その他)
変数の勉強
繰り返しと条件文
マスター登録.訂正.削除
フォルダー内のファイル
項目をシート名で作成
ブックの操作
CSVファイルの取り込み
呼び出し元・先
商品マスター検索
エクセル関数をVBAで
エクセル関数を使う
よくつかうプログラム
販売管理(ソース)
財務管理(ソース)
給与管理(概要・画面)
見積もり(概要・画面)
工程管理(概要・画面)
原価管理(概要・画面)