タグ

VBAに関するkastro-iyanのブックマーク (11)

  • VBAにはユニットテストやリファクタリング機能がない・・・そんなふうに考えていた時期が俺にもありました - Qiita

    コンテキストメニューまたは、メニューバーのRubberduckメニューからRefactorを実行することでリファクタリングが行えます。 下記の例では関数名を変更しています。 他にも引数の削除や順番が行えます。 テスト用のモジュールとメソッドの追加方法 Rubberduck→Unit Tests→Test Moduleでテストモジュールを追加、Rubberduck→Unit Tests→Test Methodでテストメソッドを追加します。 テストモジュール中の「'@TestMethod」というコメントが記載された関数がテストメソッドとなります。 テスト実行例 まず以下のようなテストモジュールを用意します。 Option Explicit Option Private Module '@TestModule '@Folder("Tests") Private Assert As Object

    VBAにはユニットテストやリファクタリング機能がない・・・そんなふうに考えていた時期が俺にもありました - Qiita
    kastro-iyan
    kastro-iyan 2020/07/15
    ふおお、すごい
  • 【エクセルVBA】一瞬で結合セルを解除して値を埋めるマクロ

    データベースとして使いたい表なのに、結合セルだらけで使い物にならない。 そんなときに、VBAで作ったマクロを起動するだけで、 結合セルを解除して 元々入っていた値を、結合されていたすべてのセルに入力する マクロを紹介します。 ソースコードを貼り付けて実行するだけなので、1分もかからずに、表を整形できます。 ソースコード 下記を、標準モジュールに貼り付けて実行してください。 Sub UnmergeCellsAndFillValues() Dim rng As Range For Each rng In ActiveSheet.UsedRange If rng.MergeCells Then With rng.MergeArea .UnMerge .Value = .Resize(1, 1).Value End With End If Next End Sub 解説 For Eachループ F

    【エクセルVBA】一瞬で結合セルを解除して値を埋めるマクロ
  • VBAのIE制御入門 | IE操作の自動化

    EXCELVBAを利用したIE(Internet Explorer)の制御方法や自動操作についての入門サイトです。 VBAのIE制御 VBAのIE制御入門サイトは、エクセルVBAによるIE制御やwebページのデータ取得など基的なものから実践向けの内容まで幅広くカバーしている入門サイトです。エクセルVBAでブラウザの操作ができること自体知らない方も多いので、今はじめて知った方は是非挑戦してみてください。 エクセルVBAの勉強方法について右サイドメニューの項目を上から順に抜粋すると以下のような構成になります。 IE制御の準備IE制御の基操作HTMLエレメントの基操作HTMLフォームの基操作HTMLフレームの基操作上記の項目から順に学習していけば、IEのwebページ操作で基処理から複雑なプログラムまで作成できるレベルまで上達します。1つ1つのプログラムの説明だけでなく、実践向けの処

  • Excel VBA入門

    Excel でこれから VBA を使ってみたいという方を対象にした VBA 入門です。 VBA とは Visual Basic for Applications の略で Excel や Access などで利用できるプログラミング言語の1つです。 VBA を使うことで手動で行っている定型的な業務などを自動化させたり、独自のフォームなどを作成して Excel をアプリケーションのように見せることなどができます。ここでは Excel での VBA の使い方についてサンプルを使いながら解説していきます。 ※ Excel でマクロを記録する方法などについては「Excelマクロ入門」を参照されてください。

    Excel VBA入門
  • エクセルExcel大事典 マクロVBAワークシート関数入門応用使い方講座

    ■ エクセルVBA超入門 ・9ステップで"Hello World!" からオブジェクト指向まで! 1. "Hello World!"を表示しよう 2. 基はデータの入出力 3. 繰り返し処理 4. シートで簡易データベース 5. 名前をつけよう 6. 構造化プログラムに挑戦 7. 構造体を使ってみよう 8. フォームを使ってみよう 9. オブジェクト指向に挑戦 ■ エクセルVBA中級編 ・VBAでいろんなテクニック 変数・関数のスコープ 引数の参照方法を明示 配列の中身を一気に複写 識別子がよいコードを作る データ定義型をもっと知ろう 定数と列挙型を活用しよう エラー処理の重要性1 エラー処理の重要性2 いろいろな条件分岐 いろいろな繰り返し処理 演算子について知ろう 文字列操作 連結 変換 置換 文字列操作 検索 比較 書式 日付操作関数を知ろう 数値操作・評価・その他関数 並び替えソ

  • VBAで正規表現を使う

    はじめに 改めて言うまでもないことですが、文字列処理で正規表現が使えると非常に便利です。VBAで正規表現を利用する方法を紹介したいと思います。 対象読者 VBAで正規表現を使用したい方 VBAで煩雑な文字列処理の行う必要のある方 なお、「正規表現についてよくわからない」という方は、以下のページの解説などを参考にしてください。 サルにもわかる正規表現入門 必要な環境 Windows VistaまたはWindows XP VBA開発環境 正規表現を使う前に VBAで文字列比較を行う場合、標準の機能としてStrComp関数やLike演算子があります。 特にLike演算子は、ワイルドカードなどによるパターンマッチングが行えます。正規表現よりも柔軟性は劣りますが、実現したい機能がLike演算子で済むのならば、無理に正規表現は使わずLike演算子を使った方がよいと思います。詳しくは、ヘルプにあるLik

    VBAで正規表現を使う
  • エクセルVBAマクロ集

    ★お願い★ Excel 2010~2002(各32bit版)で動作確認してます。 環境の違い等、 様々な要因により不具合が発生しないか、 注意してご使用ください。 なお、Microsoft社とは無関係です。 そちらへのご質問はご遠慮を! このマクロ集には著作権があります。あなたのお仕事に個人的に利用 する場合を除き、無断で転載、配布等できません。

  • WindowsでExcelをいじるコードを書く最適解 - Qiita

    WindowsExcelをいじくり倒すコードを書く最適解を探す旅路 複数エクセルの大量データをプログラムでいじくる。 要件 WindowsExcelはじめとする様々な操作を行いたい。 Excelで数百-数千行の配列をいくつも扱いたい windowsで、exeとしてまとまった形で実行したい GUIがほしい 実行中にその動作を監視したいが、プロセスがとられて動かなくなるのはもちろん嫌だ。 要するにExcelなどのコントロールを行いながら、 「ぱっとみ普通のアプリケーションにしたい」 という要件を叶えるためにgoogleさんにお世話になりまくったが、どこにも最適解だと思われるものは載っておらず、大変だったのでメモっておく。 僕のやり方が当に最適解か、というのはわからないけど、こういったテキストで助かる人がいればと思い、せめて。 解法1 VBA VBAとはExcelに付属のマクロで、Visu

    WindowsでExcelをいじるコードを書く最適解 - Qiita
  • 複数のコントロールのイベントを一つのプロシージャにまとめる(ExcelVBA)

    丁寧な個別指導・充実の講師陣 ワンランク上へ 直前までキャンセルOK 株式会社ライブウェイシステムズ 〒386-0002 長野県上田市住吉246-7 TEL:0268-26-3024 パソカレの地図はこちら サイトマップ 資格取得からPTA・自治会の案内通知まで。プログラミングやWeb制作も 今回は、VBAを取り上げます。 現在、生徒のU君は、VBAを勉強しています。基礎的なスキルを身につけたので、実践編へと進んでいます。 今取り組んでいる課題は、「VBAで電卓を作る」です。 みなさんも、一緒に考えてみませんか? エクセルを起動して、ALTキー + F11キー を押します。 Visual Basic Editorが起動したら、「挿入」→「ユーザーフォーム」とクリックします。 画面に、フォームが表示されたら、以下の様にコントロールを配置します。 上部に、テキストボックス、

    kastro-iyan
    kastro-iyan 2016/06/06
    [excel]
  • VBAにて、ユーザーフォーム上に動的に設置したコンボボックスの選択値が変更されたときに、選択値に応じて別のコンボボックスのリストを変... - Yahoo!知恵袋

    VBAにて、ユーザーフォーム上に動的に設置したコンボボックスの選択値が変更されたときに、選択値に応じて別のコンボボックスのリストを変更したいのですが、可能でしょうか。 ご存知の方がおられたらお教え下さい VBAにて、ユーザーフォーム上に動的に設置したコンボボックスの選択値が変更されたときに、選択値に応じて別のコンボボックスのリストを変更したいのですが、可能でしょうか。 ご存知の方がおられたらお教え下さい 下記がコントロール設置時のコードの抜粋です。ユーザフォームの初期処理やコマンドボタンClickイベントにより、メソッドを呼び出してコンボボックスを追加していきます。 cb_bashoKenGのコンボボックスが変更されたときに、cb_bashoSiGのリスト内容を変更したいです。 後者のリスト内容を作成、設定するメソッドは作成していますので、それを呼び出すためのイベント処理をcb_bash

    VBAにて、ユーザーフォーム上に動的に設置したコンボボックスの選択値が変更されたときに、選択値に応じて別のコンボボックスのリストを変... - Yahoo!知恵袋
    kastro-iyan
    kastro-iyan 2016/06/06
    [excel]
  • Excelマクロ(VBA)初心者でも簡単にできる、マクロの組み立て方 - 日々のこと

    Excelマクロ(VBA)というのは、ちまっとしたツールを作るのにとても便利な存在です。 職場でExcelを使う場面は非常に多いと思うので、覚えておくと仕事がとても楽になります!人力ならちまちまちまちま作らないといけないようなファイルが、ボタンポチっとしてトイレ行って帰ってきたら完成してたら嬉しいでしょ。 独学でVBAを覚えた私が、職場ではどんな風にツールを作っているのかざっくり書いてみます。 たとえばこんな依頼があったとします 要望 一覧表から削除リストにあるIDを削除して、結果ファイルを作るマクロを作って欲しい。毎日このマクロを動かすことにするから、結果ファイル名の最後には実行した日付を入れて欲しい。入出力ファイルの保存先はそのときで変わるかも。 種別ファイル名 インプット 01_一覧表.xlsx 02_削除リスト.xlsx アウトプット 【削除後】一覧表_[日付].xlsx …と、い

    Excelマクロ(VBA)初心者でも簡単にできる、マクロの組み立て方 - 日々のこと
  • 1