午後わてんのブログ

ベランダ菜園とWindows用アプリ作成(WPFとC#)

エクセルVBA

エクセルVBAとC++とC#とVB、それぞれのバブルソートの処理時間

アプリやプログラム言語の違いで処理速度がどれだけ違うのかバブルソートを書いて試してみた エクセルのVBA Visual Studio Community 2017のC++ Visual Studio Community 2017のC# Visual Studio Community 2017のVB この4つで1万件のランダム数値配列をバブ…

エクセルVBAで、ソートアルゴリズムとデータの違いによるソート処理時間比較

前回まででいろいろなソートアルゴリズムをVBAで書くのは満足したので今回はそれらを使って計測 計測した環境は OS:Windows 10 Home 64bit エクセル:エクセル2007 CPU:AMD PhenomⅡ X3 720BE @3.0GHz OS以外は2007年から使い続けている10年前のパソコン 前…

エクセルVBAでクイックソート

クイックソート 基準値を配列の中から選んで基準値以上の値を配列の右へ、基準値以下は左へ寄せてから基準値の場所で配列を二分割、この処理を分割した配列それぞれで繰り返す 'vが配列、tは並び替える範囲の先頭の添字(index)、bは最後尾の添字 Sub QuickSo…

エクセルVBAでヒープソート

ついにヒープソートなんだけど、その前に選択ソート 選択ソート - Wikipediahttps://ja.wikipedia.org/wiki/%E9%81%B8%E6%8A%9E%E3%82%BD%E3%83%BC%E3%83%88 最小値を探し出して順番に並べるだけ 最初は配列全体から最小値を探す、見つかった値は配列の1番左…

エクセルVBAでマージソートその2、再帰処理の必要がないボトムアップ方式で速くなった

前回 gogowaten.hatenablog.com エクセルVBAでマージソートと再帰処理(再帰呼出し)...も難しいなあ ( ソフトウェア ) - 午後わてんのブログ - Yahoo!ブログ http://blogs.yahoo.co.jp/gogowaten/14807202.html 本当は速いはずのマージソートがシェルソートや…

エクセルVBAでマージソートと再帰処理(再帰呼出し)...も難しいなあ

マージソートMergeSort マージソート - Wikipediahttps://ja.wikipedia.org/wiki/%E3%83%9E%E3%83%BC%E3%82%B8%E3%82%BD%E3%83%BC%E3%83%88 うーん、わからん マージソート | アルゴリズムとデータ構造 | Aizu Online Judgehttp://judge.u-aizu.ac.jp/online…

エクセルVBAでシェルソート

今回は挿入ソートの改良型のシェルソート シェルソート - Wikipediahttps://ja.wikipedia.org/wiki/%E3%82%B7%E3%82%A7%E3%83%AB%E3%82%BD%E3%83%BC%E3%83%88 挿入ソートでは常に隣と比較していたのを離れたところと比較してから、だんだん近くのものと比較…

エクセルVBAで挿入ソート

挿入ソート、InsertionSort 挿入ソート - Wikipediahttps://ja.wikipedia.org/wiki/%E6%8C%BF%E5%85%A5%E3%82%BD%E3%83%BC%E3%83%88 今までのバブルソートからコムソートは交換して並べ替えていた 挿入ソートは名前の通り挿入して並べ替えていく 3,5,6って整…

エクセルVBAでコムソート

今回はコムソートCombSort 順番に gogowaten.hatenablog.com エクセルVBAでバブルソート ( ソフトウェア ) - 午後わてんのブログ - Yahoo!ブログ http://blogs.yahoo.co.jp/gogowaten/14787146.html ↓ gogowaten.hatenablog.com エクセルVBAでシェーカーソー…

エクセルVBAでシェーカーソート

前回のバブルソートからの続き gogowaten.hatenablog.com エクセルVBAでバブルソート ( ソフトウェア ) - 午後わてんのブログ - Yahoo!ブログ http://blogs.yahoo.co.jp/gogowaten/14787146.html シェーカーソート ja.wikipedia.org 基本はバブルソートと同…

エクセルVBAでバブルソート

エクセルVBAでバブルソート バブルソート 隣の数値を比較して 左が大きい場合は数値を入れ替え 左が大きくない場合は入れ替えしない この処理を左から右へ行う 右端まで達したら、また左から繰り返す 繰り返す(ループさせる)回数は数値の数-1 だいたいこんな…

Visual Basic Editorでユーザーフォームを閉じたときにコード画面のままにするには

Visual Basic Editorでユーザーフォームを閉じたときにコード画面のままにするには 標準モジュールからユーザーフォームをモードレスで表示してから閉じる 通常だとユーザーフォームを閉じるとコード画面を開いていてもデザイン画面が表示されるけど、なぜか…

グループ化図形の中の図形のTopLeftCell取得方法とコピペで消えてしまうParentGroupの取得

グループ化図形の中の選択図形のTopLeftCellを取得したい 図形1から3までの文字を入れた図形3つをグループ化して、その中の図形3を選択した状態 この図形のTopLeftCell(左上にあるセル)を取得したい場合 期待するのはB5セル 普通に書いて Sub test3() Dim s …

図形のテキストボックスの段落のタブの配置をVBAで正確に取得できないことがあったので調べてみた

図形やテキストボックスの中の文字列をセルにコピーするマクロ '選択状態の図形の文字列を近くのセルへコピー '複数行なら複数セルを使用 Sub ShapeTextToCell() Dim i As Integer Dim str As String Dim s As Shape Set s = Selection.ShapeRange.Item(1) '…

午後ツールその55、選択セル範囲を図形のテキストボックスにする、印刷用の点線を消すマクロを追加

この前作っていた選択セル範囲をテキストボックスにするマクロをアドインに取り入れてみた ついでに図形の選択と印刷の点線を消すマクロも加えた ExTextBoxタブのtest1から6までがテキストボックス作成のボタン 選択セル範囲からテキストボックスを作る6つの…

ボタンの名前からコントロールIDを探すマクロ、IDを使ってセルの右クリックメニューに既存のボタン追加

セルの右クリックメニューに既存のボタン追加 よく使う機能(ボタン)を追加した 値の貼り付け、書式の貼り付け、行列を入れ替えて貼り付け、図をファイルから挿入 エクセル2007専用 Sub ボタン追加するマクロ() Dim bName As String: bName = "形式を選択して…

選択セル範囲を図形のテキストボックスにするマクロその5、テキストボックスの余白と行間隔

列幅の自動調節 普通は調節したい列の右側をダブルクリックで調節するか Columns("b").AutoFit これだと一番長い文字列に合わせられるけど 短い文字列の幅に合わせたいときもある! B列の幅の調節でB3の「いいい」に合わせたいとき Range("b3").Columns.Auto…

選択セル範囲を図形のテキストボックスにするマクロその4、フォントの取り消し線、下付き上付き文字、下線

今までフォントの設定で反映していたのは文字色、フォント名、フォントサイズ、この3つだったけどその他も対応することにした セルの書式設定のフォント設定画面 よく使うのは太字くらいかなあ、全く使わないのは下線と文字飾り、それでも全部対応することに…

選択セル範囲を図形のテキストボックスにするマクロその3、図形の四角形をテキストボックス化

"普通のテキストボックス"と"図形にテキストを追加したもの"とではどんな違いがあるのかを少し調べてみた 結果は ほとんど違いがない 移動させるときは図形のほうがラク 初期の見た目が違うけど設定で全く同じようにすることができる これからはテキストボッ…

選択セル範囲を図形のテキストボックスにするマクロその2、タブ位置調整

前回 gogowaten.hatenablog.com 図形のテキストボックスのタブ文字、タブ位置とかのメモ、選択セル範囲を1つのテキストボックスにするマクロ ( ソフトウェア ) - 午後わてんのブログ - Yahoo!ブログ http://blogs.yahoo.co.jp/gogowaten/14686706.html の続…

図形のテキストボックスのタブ文字、タブ位置とかのメモ、選択セル範囲を1つのテキストボックスにするマクロ

図形のテキストボックスのタブ文字、タブ位置とか調べてみた結果 よくわからん(´・ω・`) エクセル2007は図形に対するマクロの記録ができなくてめんどくさいのでメモ このテキストボックスにはa1タブ文字a2タブ文字a3って入っている テキストボックスのタブ…

複数行のセルの値をまとめて1つのテキストボックスにするマクロその2

前回の gogowaten.hatenablog.com 複数行のセルの値をまとめて1つのテキストボックスにするマクロ ( ソフトウェア ) - 午後わてんのブログ - Yahoo!ブログ http://blogs.yahoo.co.jp/gogowaten/14674215.html つづき 選択セル範囲の左の1列をまとめて1つのテ…

複数行のセルの値をまとめて1つのテキストボックスにするマクロ

複数行のセルの値をまとめて1つのテキストボックスにする こういうマクロを作ってみた セルにつけるコメント機能 これはサイズの自動調整機能がないんだよねえ テキストボックス(図形)ならサイズの自動調整がある 複数行のセルの値をテキストボックスにする…

エクセルVBA、チェックボックス付きのListBoxのInputBox?を作ってみた

ユーザーからデータを受け取りたいときはInputBoxを使うんだけど これだと1つしか受け取れなくて事足りないときがある そこでつくってみたのがこれ↓ チェックボックス付きのリスト形式のInputBoxみたいなの ボタンを押すとチェックの入った項目の配列を返す …

エクセルVBAでライフゲームその3

別シートで行っていたセルの探査を配列を使うようにしたら2倍くらい速くなった 1世代更新にかかった時間 20x20だと0.22秒から0.11秒 40x20だと0.36秒から0.14秒 セル数が増えると余計に差がでてくる 動かしているところ http://www.geocities.jp/gogowaten…

エクセルVBAでライフゲームその2のコードと名前の付いたセル範囲の一覧作成マクロ

前回の記事 gogowaten.hatenablog.com エクセルVBAでライフゲームその2 ( ソフトウェア ) - 午後わてんのブログ - Yahoo!ブログ http://blogs.yahoo.co.jp/gogowaten/14606097.html の補足 上下左右ループ 前々回 http://www.geocities.jp/gogowaten/lifegam…

エクセルVBAでライフゲームその2

前回 gogowaten.hatenablog.com エクセル方眼紙とVBAでライフゲーム ( ソフトウェア ) - 午後わてんのブログ - Yahoo!ブログ http://blogs.yahoo.co.jp/gogowaten/14597959.html のつづき 動作の様子 http://www.geocities.jp/gogowaten/lifegame07.gif マッ…

エクセル方眼紙とVBAでライフゲーム

ライフゲーム - Wikipedia https://ja.wikipedia.org/wiki/%E3%83%A9%E3%82%A4%E3%83%95%E3%82%B2%E3%83%BC%E3%83%A0 ライフゲームの基本ルール 誕生 周囲に生存セルがちょうど3つあれば誕生 生存 周囲に生存セルが2個か3個あれば生き残る 消滅 上記以外の場…

画像付き見出し付きテキストボックス作成のフローチャート書いてみた(3/3)

gogowaten.hatenablog.com 画像付き見出し付きテキストボックス作成のフローチャート書いてみた(2/3) ( ソフトウェア ) - 午後わてんのブログ - Yahoo!ブログ http://blogs.yahoo.co.jp/gogowaten/13304196.html ↑の記事の続き 多分最後のページ、3分割とか…

画像付き見出し付きテキストボックス作成のフローチャート書いてみた(2/3)

続き 前の記事は gogowaten.hatenablog.com 画像付き見出し付きテキストボックス作成のフローチャート書いてみた(1/2) ( ガーデニング ) - 午後わてんのブログ - Yahoo!ブログ http://blogs.yahoo.co.jp/gogowaten/13304190.html フローチャートって初め…