黙々とC#

"In a mad world of VBA, only the mad are sane" 『VBAという名の狂った世界で狂っているというのなら私の気は確かだ』

Excel C# Script入門講座

Excel C# Script入門講座へようこそ!

『全てのVBAコードを生まれる前に消し去りたい。 すべての宇宙、過去と未来の全てのVBAを、この手で』 このページはExcel VBAを実務で利用されている方で、VBAに心の底から辟易しており、現代的なプログラミング言語(C#6.0)を使って、Excelファイルから分離…

オブジェクトとプロパティ、メソッド

本記事は、Excel C# Script入門講座の1記事です。 オブジェクトとプロパティ、メソッド オブジェクトとプロパティ、メソッド C# ScriptでExcelを操作するにあたっては、コード上で 操作対象とするモノ 操作内容 の2つを指定します。 前者については、Excelの…

C# Scriptの入力と実行

本記事は、Excel C# Script入門講座の1記事です。 C# Scriptの入力と実行 C# Scriptを保存するフォルダの指定 C# Scriptの新規作成 C# Scriptの編集 C# Scriptの実行 C# Scriptの入力と実行 実際にC# Scriptを入力して、実行するまでを簡単に説明します。 C#…

ExcelCSXの導入

本記事は、Excel C# Script入門講座の1記事です。 ExcelCSXの導入 インストールに必要な要件 インストール手順 最初にすべきこと ExcelCSXの導入 インストールに必要な要件 OSがWindows7 以降であること .NET Framework 4.6 がインストールされていること Ex…

オートフィルタ

本記事は、Excel C# Script入門講座の1記事です。 オートフィルタ AutoFilterメソッドの構文 AutoFilterメソッドの戻り値 AutoFilterメソッドの引数 引数Field 引数Criteria1, Criteria2 引数Operator 引数VisibleDropDown 全ての引数を省略した場合 サンプ…

ソート

本記事は、Excel C# Script入門講座の1記事です。 ソート Sortメソッドの構文 Sortメソッドの戻り値 Sortメソッドの引数 引数Key1, Key2, Key3 引数Order1, Order2, Order3 引数Type 引数Header 引数OrderCustom 引数MatchCase 引数Orientation 引数SortMeth…

連続検索

本記事は、Excel C# Script入門講座の1記事です。 検索 FindNextメソッドの構文 FindNextメソッドの引数 サンプルコード 検索 シート内で文字列を検索するは、下記記事で解説したようにRangeオブジェクトのFindメソッドを使用します。 mokumokucsharp.hatebl…

検索

本記事は、Excel C# Script入門講座の1記事です。 検索 Findメソッドの構文 Findメソッドの戻り値 Findメソッドの引数 引数After 引数LookIn 引数LookAt 引数SearchOrder 引数SearchDirection 引数MatchByte 引数SearchFormat サンプルコード 検索 シート内…

try ~ catch

本記事は、Excel C# Script入門講座の1記事です。 try ~ catch try ~ finally try ~ catch スクリプト内でエラーが発生した場合のプログラムの制御には、try ~ catch ステートメントを使用します。 try ~ catch ステートメントは、try ブロックと、それ…

goto

本記事は、Excel C# Script入門講座の1記事です。 goto goto case goto 無条件に処理を分岐させたい場合には、goto ステートメントを使用することができます。ただし、gotoステートメントを多用するとプログラムが分かりにくくなるので積極的には使わない方…

return, break

本記事は、Excel C# Script入門講座の1記事です。 return, break return break return, break return C# スクリプトの処理を途中で抜ける場合、returnステートメントを使用します。 var x = 1; return; //ここでスクリプト終了 var y = 2; //この処理は実行…

using

本記事は、Excel C# Script入門講座の1記事です。 using using usingステートメントは、IDisposableインターフェースを実装したオブジェクトを呼び出した際に、確実にDispposeメソッドが呼ばれるように保証するための簡易構文です。 #r "System.Drawing" usi…

while

本記事は、Excel C# Script入門講座の1記事です。 while while 文 do while文 while 条件により処理を繰り返したい場合、whileステートメントを使用します。 while は"while (条件式)"の形式で条件を指定します。条件式がtrueの間、処理が実行されます。 従…

for

本記事は、Excel C# Script入門講座の1記事です。 for for 条件により同じ処理を繰り返したい場合(反復処理を行いたい場合)には、forステートメントが利用できます。 for(初期化式; 条件式; 更新式) { //反復処理 } 下記の例では、まず変数iに1が代入され(…

switch

本記事は、Excel C# Script入門講座の1記事です。 switch case フォールスルー禁止の原則 フォールスルー禁止の例外 switch case 複数の条件により処理を分岐させたい場合はswitchステートメントを使用します。 switchステートメントには、1つ以上のswitch…

if ~ else

本記事は、Excel C# Script入門講座の1記事です。 if ~ else 関係演算子と等値演算子 型検査演算子 論理演算子 単項演算子 if ~ else 条件により処理を分岐させたい場合は、if ~ else ステートメントを使用します。 ifは、"if (condition)" の形式で条件…

コレクション(配列・リスト)

本記事は、Excel C# Script入門講座の1記事です。 コレクション(配列・リスト) 配列 リスト コレクション(配列・リスト) 配列 配列とは、一つの変数に対して複数の同じ型のデータを格納する場合に使用します。 配列は、以下のようにして宣言することが出…

変数のスコープ

本記事は、Excel C# Script入門講座の1記事です。 変数のスコープ 変数のスコープ C# スクリプトにおいてクラス、メソッドで囲むこと無く直接宣言された変数は、publicな変数となり、スクリプトのいかなる箇所からでも参照可能となります。なお、static変数…

アクセス修飾子

本記事は、Excel C# Script入門講座の1記事です。 アクセス修飾子 アクセス修飾子 C# Scriptでは、直接記載したメソッドやクラスのアクセス修飾子は、明示しなかった場合 publicとなります。 すなわち、#load で他のスクリプトファイル(*.csx)を読み込んだ際…

メソッド、クラスの宣言

本記事は、Excel C# Script入門講座の1記事です。 メソッド、クラスの宣言 拡張メソッドの宣言 メソッド、クラスの宣言 C# Scriptでは、メソッドの定義を直接書き始めることが可能です。 test(); void test(){ var a1 = Excel.ActiveWorkbook.ActiveSheet.Ra…

演算子と計算

本記事は、Excel C# Script入門講座の1記事です。 演算子と計算 算術演算子 インクリメント、デクリメント 演算子と計算 計算を行うには、演算子を用います。算術計算を行うにあたっては、演算子の中の「算術演算子」を用います。 演算結果を変数に代入する…

変数の型(クラス)

本記事は、Excel C# Script入門講座の1記事です。 変数の型(クラス) 数値を代入できる変数を宣言する場合 サンプルコード 文字列を代入できる変数を宣言する場合 サンプルコード 日付・時刻を代入できる変数を宣言する場合 オブジェクトを代入できる変数を…

変数

本記事は、Excel C# Script入門講座の1記事です。 変数 変数 変数は、数値や文字列、オブジェクトを一時的に格納する入れものです。 スクリプト内で変数を利用する際は、まず、変数を宣言します。変数の宣言は、 利用したい変数のクラス名 変数名 のように行…

日付・時間

本記事は、Excel C# Script入門講座の1記事です。 日付・時間 現在の日付・時間 年・月・日・時・分・秒の取得 日付の加算・減算 日付・時間 日付時刻を扱うためのDateTimeオブジェクトを利用するには using System; の宣言を追加する必要あり。 現在の日付…

文字列操作

本記事は、Excel C# Script入門講座の1記事です。 文字列操作 文字列の置換 文字列の文字数 部分文字列の取得 特定の文字/文字列の位置の取得 文字列操作 文字列の置換 var str = "No VBA, No Life."; var replacedStr = str.Replace("VBA","C#"); 文字列の…

ファイル/フォルダの操作

本記事は、Excel C# Script入門講座の1記事です。 ファイル/フォルダの操作 ファイル操作 ファイルのコピー ファイルの削除 ファイルが存在するかの確認 ファイルの移動・名前の変更 フォルダ操作 フォルダの作成 フォルダの削除 フォルダの移動・名前の変更…

ファイルの入出力

本記事は、Excel C# Script入門講座の1記事です。 ファイルの入出力 ファイルの読み出し ファイルの書き出し ファイルの追記 ファイルの入出力 ファイル(特にテキストファイル)を読み書きしたい場合には、System.IO名前空間のFileクラス.aspx)を利用します。…

ワークブックの保存

本記事は、Excel C# Script入門講座の1記事です。 ワークブックの保存 SaveAsメソッドの構文 SaveAsメソッドの引数 Filename引数について FileFormat引数について Password引数について WriteResPassword引数について サンプルコード ワークブックの保存 ワ…

ワークブックを閉じる

本記事は、Excel C# Script入門講座の1記事です。 ワークブックを閉じる Closeメソッドの構文 Closeメソッドの引数 SaveChanges引数について RouteWorkbook引数について 注意 サンプルコード ワークブックを閉じる ワークブックを閉じるには、Workbookオブジ…

ExcelCSXの決まりごと

本記事は、Excel C# Script入門講座の1記事です。 ExcelCSXの決まりごと スクリプトの実行 デフォルトの参照・using ExcelCSXを実行中のExcelアプリケーションへのアクセス #loadによる別スクリプトのロードについて ExcelCSXの決まりごと ExcelCSXでC# Scri…