読者です 読者をやめる 読者になる 読者になる

hex309’s diary

備忘録としてぼちぼちやります。VBAネタが多くなりそうです

VBA

VBAの仕様書

いつも、リンク先を検索することになるので、ここに書いておきます。 VBAの仕様書は以下からダウンロードできます。 [MS-VBAL]: VBA Language Specification サイトも英語ですが、仕様書も英語です(当たり前か)。 更新も行われていて、最新版は、12/15/201…

Rangeオブジェクトと引数のカッコの話

VBA

先日、次のようなコードを見る機会が有りました。 Sub CopySample1() Range("A1").Copy (Cells(1, 2)) Range("A2").Copy (Range("B2")) End Sub このコード、どちらもCopyメソッドの引数Destinationを指定しています。違いと言えば、貼り付け対象のセル(Ran…

基数変換(n進数を10進数に変換)

10進数をn進数に変換するコードを紹介したので、今回は逆です。以前、10進数をn進数に変換するコードはコチラです。hex309.hatenablog.com hex309.hatenablog.comというわけで、コチラ。 'n進数を10進数に変換 Private Sub ConvertIntoDecimalTest() 'Conver…

基数変換(ループバージョン)

基数変換のループバージョンです。 以前紹介した再帰バージョンはコチラ。 hex309.hatenablog.com 今回も16進数までの対応です。16進数の文字列への変換を行うGetHexStringプロシージャは、再帰バージョンと同じです。 まぁ、こっちのほうがシンプルですよね…

アルゴリズムの本

実は、こんな本を買いました。 アルゴリズム大事典 (I・O BOOKS) 作者: 橋本英美 出版社/メーカー: 工学社 発売日: 2013/11 メディア: 単行本 この商品を含むブログ (3件) を見る サンプルのコードがVBAというところが珍しいですかね。 VBAのコード自体は、…

基数変換

今回は、基数変換です。10進数をn進数に変換します(16進数まで)。 普通にループで処理すればいいんですけど、あえて再帰で。 '基数変換(10進数をn進数に変換する) Private Sub RadixConversionTest() Debug.Print RadixConversion(777, 16) End Sub Priv…

クイックソート(配列バージョン)

始めたばかりですが、息切れ始まった感じです。 とりあえず、クイックソートの配列バージョンです。正直、エラー処理などもっとスマートにできる気がしますが、公開します。 Private Sub QuickSortArrayTest() Dim temp As Variant Dim data(0 To 3) As Vari…

二分探索(VBA)

VBA

今回は、二分探索です。配列の要素を検索して、指定した値が配列の何番目にあるか調べます。 相変わらずコメント無くてすみません。 Private Sub BinarySearchTest() Dim vList(1 To 5) As Long vList(1) = 1 vList(2) = 5 vList(3) = 10 vList(4) = 14 vLis…

挿入ソート(VBA)

VBA

先日、クイックソートを載せたので、今回は挿入ソートです。 今回もCollection使ってます。コメントが無いのはすみません。 Private Sub InsertionSortTest() Dim temp As Collection Dim i As Long Set temp = New Collection temp.Add 4 temp.Add 3 temp.A…

アルゴリズムのお勉強

VBA

頭のトレーニング用に最近買った本です。 なっとく!アルゴリズム 作者: アディティア・Y・バーガバ 出版社/メーカー: 翔泳社 発売日: 2017/01/31 メディア: Kindle版 この商品を含むブログを見る この書籍、なかなか読みやすく分かりやすかったです。 サン…