なんだかGoodVibes

日々の勉強メモです。

2019-05-01から1ヶ月間の記事一覧

UnixTimeを変換

C#

UnixTimeを変換したい!ってなることがあるので サンプルを作りました。 Console.WriteLine("変換したいUnixTimeを入力してください。"); var input = Console.ReadLine(); var unixTime = 0; if (int.TryParse(input, out unixTime)) { // Unix時間をDateTi…

Mac版ExcelでActiveXエラー

VBA

Windows で作成したマクロを動かしたら 「ActiveX コンポーネントはオブジェクトを作成できません」 とエラーが表示され、どうにもこうにも動かない… 該当箇所では以下の記載。 CreateObject(“Scripting.Dictionary”) Dictionaryオブジェクトの宣言部分でし…

日付の名前でディレクトリを作成

C#

日付の名前でディレクトリを作成し エラーの場合、テキストに出力するサンプルです。 using System; using System.IO; using System.Diagnostics; namespace FileSample { class Program { static void Main(string[] args) { var dateTime = DateTime.Now.T…

Tuple を使ってみる。

C#

名前のない型を作ることができるTuple。 今まで使ったことがなかったので、サンプル作ってみました。 var tuple = ("データ1", 1000); Console.WriteLine($"データ:{tuple.Item1} 種別:{tuple.Item2}"); string とint をセットしています。 Tuple にセット…

セル変化時のイベント

VBA

セルが選択されたり、変化があった場合に なにかイベントを発生したことありますよね。 そんなときはワークシートイベントです。 普段、コードを書くときは標準モジュールを追加して 書いていると思います。 ワークシートイベントは、"Sheet1" とかシートの…

ローカルでgit管理する

git

git初心者なので、最近知ったことメモ。 ローカルでgit管理する方法です。 $ mkdir 対象ディレクトリ名 $ cd 対象ディレクトリ名 $ git init $ git config --local ユーザー名 $ git config --local アドレス 以上です。 $ git init このコマンドだけで、新…

VBAでのcontinue

VBA

C#とかの言語だとcontinue ってありますよね。 ループで後続の処理を飛ばして次のループいくやつですね。 なんと、VBAではcontinue がありません。 なので、VBAでcontinueのようなことをしたい場合は 以下のようにします。 Do While ActiveCell.Value <> "" …

アクセス修飾子

C#

アクセス修飾子は、アクセス可能な範囲を指定するものです。 今回は4つのアクセス修飾子について記載します。 アクセス修飾子 説明 public どこからでもアクセス可能 protected 同一クラスか派生クラスからアクセス可能 internal 同一アセンブリ内でアクセス…

CSV ファイルの読み込み

C#

CSV ファイルの読み込みサンプルです。 2通りの方法を書いてみます。 まずは、for でデータを最後まで読み込む方法。 // CSVファイルパス var filename = "対象ファイルのパス"; var rowList = new List<string[]>(); var sr = new StreamReader(filename); for (;;) {</string[]>…

名前定義のルール

VBA

エクセルの名前定義に使える文字にはいくつかのルールがあります。 忘れそうなのでメモ。 C, c, R, r の一文字の名前は使用不可 スペースは使用不可 最初の文字は、文字, アンダーバー(_), 円記号(¥)が使用可能 大文字小文字は区別されないため、list とList…

空白セルになるまで処理を行う

VBA

エクセルのデータを操作するとき セルに値が入っている間は処理を続けるって処理を よくすると思うのでサンプルを作成しました。 ' ループ対象の列の先頭セル Range("A1").Select ' 空白セルでない間はループする Do While ActiveCell.Value <> "" ' 空白セ…

ペースト時の入力規則の維持と入力値チェック

VBA

入力規則を設定しているセルに対して コピペすると入力規則が壊れてしましますよね。 しかも、リストの場合、エラー表示を抑止している場合 リストに設定されている値以外も 貼り付けることが可能になってしまいますよね。 今回は、ペースト時に入力規則を復…

変数と定数の使い方

VBA

最近VBAの勉強を始めたので、基礎からメモ。 まずは変数。 Dim 変数名 As データ型 と定義します。 変数の宣言と同時に初期値の代入はできません。 以下、OKのコードとNGのコード。 // OK Dim num As Integer num = 100 // NG 宣言と同時に初期値は代入でき…

数値かどうかを判定する

C#

例えば、ユーザーの入力が数値かどうかを判定したい場合。 以下の方法でチェックできます。 var input = Console.ReadLine(); var num = 0; if (int.TryParse(input, out num)) { // 数値だった場合の処理 } 数値の場合、TryParse はTrue を返し num には数…

乱数の生成

C#

乱数の生成についてメモ。 // シード値100を用いて初期化 var seed = 100; var r = new Random(seed); // 0〜5の乱数を生成 var r1 = r.Next(5); // -5〜5の乱数を生成 var r2 = r.Next(-5, 5); ここで注意。シードが同じの場合 同じ乱数が生成されてしまい…

コンソールでカーソル位置を設定して表示をする(SetCursorPosition)

C#

コンソールで同じ位置にかつ前の値はクリアして 値を表示したいときありますよね。 3秒間のカウントダウンを表示するサンプルです。 // 初期のカーソル位置を保持する var left = Console.CursorLeft; var top = Console.CursorTop; // カーソルの位置を設定…