黙々とC#

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

よく使うC#の機能

本記事は、Excel C# Script入門講座の1記事です。

よく使うC#の機能

ExcelCSXでC# Scriptを書くに当たり、よく使う機能をまとめています。

var (C#3~), dynamic (C#4~)

ExcelCSXでは、Applicationオブジェクト(Excelアプリケーションのトップレベルオブジェクト) Excelをdynamic型としています。このため、Excel(Applicationオブジェクト)のプロパティやメソッドの返り値を格納する変数はdynamic型となります。

めんどくさいので、上記点を理解した上で、var で変数を宣言するのが楽です。

名前付き引数 (C#4~)

Sum(x, y)というメソッドがあったとして

var r = Sum(x:1, y:2);

引数名を「:」で指定する。

文字列挿入 (C#6~)

$""の中に 変数名を{} で括って挿入すると、展開される。

var f = $"{x}と{y}";

自動プロパティ×初期化子 (C#6~)

プロパティ実装とともに、初期値を指定する。

public class Point
{
    public int X { get; set; } = 10;
}

getterだけにすることも可能

public class Point
{
    public int X { get; } = 10;
}

関数の簡易文法(C#6~)

1つの式からなる関数本体に限って

『{ return ..... }』 を 『=> ....』 に置き換え可能。

public class Triangle
{
    public int X { get; set;}
    public int Y { get; set;}
    public int Area => X * Y / 2 ;
}