VB.NET・VBAエンジニアとは?VB.NET・VBAでできること
VB.NET・VBAエンジニアとは、Microsoftのプログラミング言語であるVisual Basic系の言語を使って、企業の業務システムを開発・保守したり、Excelなどの業務を自動化したりするエンジニアです。名前が似ていますが、VB.NETとVBAは使われる場面が異なります。
VB.NETは、Microsoftの開発基盤である.NET(ドットネット)の上で動く言語で、2002年に登場しました。Windowsで動く業務アプリケーションや、社内向けのWebシステムの開発に使われています。同じ.NETの言語であるC#と多くの機能を共有しており、Visual Studioという開発ツールで画面とプログラムを組み立てていくのが一般的です。
VBA(Visual Basic for Applications)は、ExcelやAccess、Word、OutlookなどのMicrosoft Office製品に組み込まれている言語です。Excelのマクロとして、データの集計や帳票の作成、ファイルの整理など、毎日の繰り返し作業を自動化するのによく使われます。
主な用途をまとめると次のとおりです。
- 販売管理・在庫管理・生産管理・会計などの業務システムの開発・保守(VB.NET)
- Windowsで動くデスクトップアプリケーションの開発(VB.NET)
- Excelでのデータ集計・帳票作成・転記作業の自動化(VBA)
- Accessを使った小規模なデータベースシステムの作成・改修(VBA)
- 古いVisual Basicで作られたシステムの、新しい環境への移行
VB.NET・VBAの求人の特徴
VB.NET・VBAの求人は、企業の社内で使われる業務システムに関わるものが中心です。新しいWebサービスを立ち上げる求人よりも、すでに動いているシステムを保守・改修し、業務の変化に合わせて機能を追加していく求人が多い傾向があります。製造、物流、小売、金融、医療、自治体など、さまざまな業界のシステムで使われてきたため、業界を問わず求人が出ている点も特徴です。
求人を出している企業としては、業務システムの受託開発を行うSIerや、エンジニアを取引先に派遣するSES(客先常駐)の企業が多く、ユーザー企業の情報システム部門(社内SE)の求人もあります。開発の形態によって働き方やキャリアの積み方が異なるため、SES・SIer・自社開発の違いもあわせて確認しておくと、求人を比べやすくなります。
もう一つの特徴が「レガシー移行」の求人です。古いVisual Basic(VB6など)で作られたシステムをVB.NETやC#に作り直す仕事や、ExcelやAccessで管理していた業務をWebシステムに置き換える仕事があります。こうした求人では、既存のプログラムを読み解く力と、移行先の技術の両方が求められます。
なお、Microsoftは2020年に、Visual Basicを.NET 5以降でも引き続きサポートする一方、言語としての大きな機能追加は計画していないという方針を公表しています(出典:Microsoft Visual Basicチームのブログ「Visual Basic support planned for .NET 5.0」、2020年3月)。そのため、VB.NETの求人では、C#の経験もあわせて求められたり、C#への移行を前提にしていたりするケースがあります。VB.NETの経験を生かしつつC#も身につけておくと、応募できる求人の幅が広がります。
経験者向けの求人では、VB.NETでの開発年数や、どの工程を担当してきたかが応募条件になっていることが多く、未経験者向けの求人では、ExcelやVBAを使った業務改善の経験や、学習への意欲が見られる傾向があります。このページで扱っている求人の件数や勤務地の傾向は、ページ上部の集計もあわせてご覧ください。
VB.NET・VBAエンジニアの仕事内容
VB.NET・VBAエンジニアの仕事は、業務システムの開発の流れに沿って進みます。利用者が社内の担当者であることが多いため、業務の内容を理解し、使う人の声を聞きながら進めることが大切です。工程ごとの主な仕事は次のとおりです。
要件定義・設計
システムを使う部署の担当者から、どんな業務を、どのように効率化したいかを聞き取り、必要な機能や画面、帳票の形式を決めます。既存のシステムを改修する場合は、今の仕組みのどこを変えるのか、変えたときにほかの機能へ影響が出ないかを調べることも重要です。
実装(プログラミング)
設計にもとづいて、VB.NETで画面や処理を作ったり、VBAでExcelのマクロを作ったりします。データベースからデータを取り出して画面に表示する処理、入力されたデータをチェックして保存する処理、集計結果を帳票として出力する処理などが代表的です。データベースはSQL Serverなどが使われることが多く、SQLを書く場面もよくあります。
テスト
作った機能が仕様どおりに動くかを確認します。業務システムでは、計算結果や帳票の内容に誤りがあると業務に直接影響するため、さまざまなデータを使って丁寧に確認します。
保守・運用・移行
稼働しているシステムの不具合対応、法改正や業務の変更に合わせた改修、利用者からの問い合わせ対応などを行います。WindowsやOfficeのバージョンアップに合わせた動作確認や、古いシステムを新しい環境に移す作業もこの工程に含まれます。
VB.NET・VBAエンジニアの年収・キャリア
VB.NET・VBAエンジニアの年収は、経験年数、担当する工程、業界や企業の規模によって大きく変わります。一般的には、プログラミングやテストを中心に担当する段階よりも、要件定義や設計などの上流工程、プロジェクトの管理やマネジメントを担う段階になるほど、年収は高くなる傾向があります。このページで扱っている求人の想定年収の目安は、ページ上部の集計もあわせてご覧ください。
業務システムの仕事では、プログラミングの技術に加えて、会計や生産管理、物流といった業務の知識が評価されやすいのも特徴です。特定の業界の業務に詳しくなると、その分野のシステムを任される機会が増え、キャリアの強みになります。
VB.NET・VBAエンジニアの主なキャリアパスには、次のようなものがあります。
- C#・.NETエンジニア:同じ.NETの技術を生かしてC#を身につけ、新しい開発にも関わる
- システムエンジニア(上流工程):要件定義や設計、顧客との調整を担当する
- プロジェクトマネージャー:開発チームをまとめ、スケジュールや品質を管理する
- 社内SE:自社の業務システム全体の企画・運用や、業務改善を担う
- 移行のスペシャリスト:古いシステムの解析と、新しい環境への移行を専門にする
未経験からVB.NET・VBAエンジニアを目指すには
VBAは、パソコンにExcelがあれば追加の準備なしで学び始められるため、プログラミングの入口として取り組みやすい言語です。事務職や営業職などで、日々のExcel作業をVBAで効率化した経験は、業務を理解したうえでシステムを作れる力として評価されることがあります。
一方で、エンジニアとして転職するには、VBAだけでなくVB.NETやデータベースの基礎も身につけておくと、応募できる求人が広がります。学習は次の順番で進めると効率的です。未経験からエンジニアになるまでの全体の流れは、未経験からエンジニアになる方法も参考にしてください。
- VBAの基本:変数、条件分岐、繰り返し、セルやシートの操作を学び、身近な作業を自動化する
- VB.NETの基本:Visual Studioを使い、画面のあるWindowsアプリケーションを作る
- データベースとSQL:テーブルの考え方と、データの検索・登録・更新の基本を学ぶ
- C#の基礎:VB.NETとの違いを確認しながら、同じ.NETの言語であるC#にも触れる
- 成果物づくり:業務の課題を解決するツールやアプリを作り、工夫した点を説明できるようにする
未経験から狙いやすい入口としては、研修制度のあるSIerやSES企業での業務システムの保守・運用、テストの担当などがあります。最初は既存のプログラムの修正やテストから始め、少しずつ設計や新しい機能の開発へと任される範囲を広げていくのが一般的です。「未経験歓迎」と書かれた求人でも、求める知識や研修の内容は企業によって違うため、求人票をよく確認しましょう。未経験から応募できる求人は未経験OKの求人一覧で探せます。
学習の成果を示す方法としては、VBAの知識を問う民間の資格試験や、ITの基礎知識を問う国家試験などがあります。どんな資格が役立つかは、未経験者におすすめの資格で紹介しています。
VB.NET・VBAの求人を選ぶときのポイント
VB.NET・VBAの求人を比べるときは、どんな業界のどんなシステムに関わるのか、保守が中心か新しい開発もあるのかを確かめることが大切です。求人票では次の点を確認しましょう。
| 確認する項目 | 見るべきポイント |
|---|---|
| 対象のシステム | どの業界の、どんな業務のシステムか(販売管理・生産管理・会計など) |
| 仕事の中心 | 既存システムの保守・改修か、新規開発か、移行プロジェクトか |
| 使用技術 | VB.NETかVBAか、C#やSQL Serverなどほかの技術も使うか |
| 担当する工程 | 実装・テストだけか、要件定義や設計まで関われるか |
| 開発の形態 | SIer・SES・社内SEのどれか。勤務場所は自社か客先か |
| 研修・教育 | 未経験者向けの研修の有無、先輩の指導体制 |
特に、移行プロジェクトでC#や新しい技術に触れられるかどうかは、その後のキャリアの広がりに関わります。求人票に書かれていない場合は、面接で確認するとよいでしょう。
VB.NET・VBAの転職でよくある質問
VB.NETとVBAの違いは何ですか?
VB.NETは.NETの上で動く言語で、独立した業務アプリケーションやシステムを作るのに使われます。VBAはExcelなどのOffice製品の中で動く言語で、主にOffice上の作業の自動化に使われます。文法には共通点が多いため、片方を学ぶともう片方も理解しやすくなります。
VB.NETの求人は今後も続きますか?
VB.NETで作られた業務システムは多くの企業で使われており、その保守や改修、移行の仕事は続いていくと考えられます。一方で、新しい開発ではC#が選ばれることも多いため、VB.NETに加えてC#も身につけておくと安心です。
Excelのマクロ経験だけでエンジニアに転職できますか?
VBAの経験は、プログラミングの基礎や業務改善の実績として評価されることがあります。ただし、エンジニアの求人ではデータベースやほかの言語の知識を求められることも多いため、VB.NETやSQLの学習もあわせて進めておくと、選べる求人が増えます。
30代からでも目指せますか?
業務システムの仕事では、前職での業界知識や業務経験を生かせる場面があります。30代からの転職の進め方は、30代からエンジニアに転職する方法で解説しています。
VB.NET・VBAの求人選びや、これまでの業務経験の生かし方に迷ったら、TECH STARTの専任アドバイザーにご相談ください。10,000件以上の非公開求人の中から、これまでのご経験や希望に合う求人をご提案します。相談は無料です。無料でキャリア相談する
























