こじんてきメモ

趣味とか...(╹◡╹)

PCのCPU,物理メモリ、ディスプレイ解像度を調べるコマンド

コマンドプロンプトで、WMICを使うとより正確な情報が取得できそう。

 

■CPU

→[systeminfo]

→[wmic CPU get NAME]

例)

---------------------------------------------------------

NAME

Intel(R) Core(TM) i3-8100 CPU @ 3.60GHz

---------------------------------------------------------

■物理メモリの容量

→[wmic MEMORYCHIP get Capacity]

※複数枚搭載時の結果は未確認。

---------------------------------------------------------

Capacity
4294967296

---------------------------------------------------------

■ディスプレイの解像度(Rexolution)

→[wmic DESKTOPMONITOR get screenheight,screenwidth]

例)

---------------------------------------------------------

ScreenHeight  ScreenWidth
900           1600

---------------------------------------------------------

※screenheightとscreenwidthは逆でも良い。

※複数枚ある時はそれぞれを出すが、まれに接続されているのに出てこないものがあるかも。

FEヒーローズの画像・音声抽出

ファイアーエムブレムヒーローズに少しはまって、いろいろ弄ってたらpngでの抽出成功したので読む人が読めばわかるようにめも

 

1.泥端末から、com.nintendo.zabaをとりあえず全部抜いてくる

・com.nintendo.zaba\files\assets\Common\Face配下にあるのが各キャラクタの画像データ

 

f:id:hmmr:20170317141656j:plain

※命名規約はおそらく、

chXX_No_NAME_SEX_Normal

XX:作品番号

No:キャラ番号

NAME:名前

SEX:性別、M→男/F→女

前半部分の詳細を誰か知ってたら教えて欲しい

2.拡張子はpngだが実態は異なる。

ヘッダがヒントになった。

XnConvertが対応してたので一括で正しいpngへ変換。

f:id:hmmr:20170317142148j:plain

 

3.おわり

ほかにもいろいろ見れて楽しかった(小並感)

f:id:hmmr:20170317142408j:plain

 

おまけ

音声はoggなのでチョロだが、各キャラの音声データがckbファイルになっている。

criket audioって所までは行けたけど、エンコの仕方までは行きつけなかったので、だれか教えて欲しい。

もしくは暇なときに調べてみたい。

この程度ならぐぐればすぐかと思ったけど出てこなかったのでメモとして残す

VBA KeyDownイベントを使ってみる

KeyDownイベントを使ってみます。

KeyDownイベントでは、キー入力が行われた際に、KeyCodeにそれぞれのキーに割り当てられた値が返されます。


とりあえず次のようにコードを書いて、
キーに割り当てられた値をメッセージボックスに出力してみます。

Private Sub UserForm_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
MsgBox KeyCode
End Sub

f:id:hmmr:20161117182244j:plain

しかしいちいちメッセージボックスが出てきて面倒なので

MsgBox KeyCode

の代わりに

Debug.Print KeyCode

とすると楽ですね。

f:id:hmmr:20161117182700j:plain

そういうわけでデバッグプリントで手元のキーボードを調べてみました。
---------------------------

■テンキー回り
Enter 13
0 96
1 97
2 98
3 99
4 100
5 101
6 102
7 103
8 104
9 105
* 106
+ 107
- 109
. 110
/ 111
NumLock 144
■文字列
A 65
B 66
C 67
D 68
E 69
F 70
G 71
H 72
I 73
J 74
K 75
L 76
M 77
N 78
O 79
P 80
Q 81
R 82
S 83
T 84
U 85
V 86
W 87
X 88
Y 89
Z 90
------------
0 48
1 49
2 50
3 51
4 52
5 53
6 54
7 55
8 56
9 57
------------
- 189
^ 222
\ 220
@ 192
[ 219
; 187
: 186
] 221
, 188
. 190
/ 191
\ 226

 

■Functionキー
F1 112
F2 113
F3 114
F4 115
F5 116
F6 117
F7 118
F8 119
F9 120
F10 121
F11 122
F12 123

 

■方向キー
← 37
↑ 38
→ 39
↓ 40

 

■それ以外
半角/全角 229
Tab 9
CapsLock 229
Shift 16
Ctrl 17
Windowsキー 91
Alt 18
無変換 29
Space 32
変換 229
カタカナ/ひらがな 229
コンテキストメニューキー 93
PrintScreen 42
ScrollLock 145
Pause/Break 19
PageUp 33
PageDown 34
End 35
Home 36
Insert 45
Delete 46

↓簡易な表にしたもの。センスがないのは...まぁ...

f:id:hmmr:20161117175734p:plain

今回はKeyDownイベントを使いましたが、似たようなイベントにKeyPressイベントがあります。KeyPressでも似たように値を返すのですが、だからといってKeyDownと同じ値は使えません。

例えばKeyDownでは「A」は「65」を返しますが、KeyPressでは「97」を返します。というかそもそもKeyPressの場合はKeyDownではなくKeyAsciiです。

とりあえず今回はKeyDownイベントのお話ということでここまで

 

追記

これらのKeyCodeはここにすべて記載されている。

 https://docs.microsoft.com/ja-jp/office/vba/language/reference/user-interface-help/character-set-0127

https://docs.microsoft.com/ja-jp/office/vba/language/reference/user-interface-help/character-set-128255

VBAメモ マクロを動かすには???

前回はマクロをすぐに書き始める方法を書きました。

そのままsubプロシージャ内に処理を書いていけばいいのですが、実際マクロを動かして処理をさせようとすると、はたと気付きます。これってどうすればマクロを動かせるのだろうか?

例えばVBE画面でフォームの実行ボタンを押すとか、F5を押すとかでもマクロは動きますが、実際にマクロを書き終わって、毎回処理させると考えたら、いちいちVBE画面を開いてF5を押すのは手間です。

そこで便利なのがボタンを用意することです。

望むべくは、

エクセルを開く→シートに配置されたボタンを押す

のフローで動作させることです。

という事で、その方法です。

1.開発タブを表示させる

結局は開発タブを表示させなきゃダメです。表示の方法は「VBA 開発タブ」とかで調べると出てきます。バージョン毎にやり方が異なるのでここでは書きません。

2.ボタンを配置&ボタンにマクロを登録

開発タブ→挿入→ボタン(フォームコントロール)→任意の範囲をドラッグ&ドロップしてボタンを作る→「マクロの登録」画面が開くので、自分が作ったマクロを指定して「OK」

f:id:hmmr:20160610124313j:plain

f:id:hmmr:20160610124318j:plain

これでボタンを作って、そのボタンにマクロを登録する事ができました。後はボタンを押す毎にマクロが動いて処理がはじまります。今回は簡単にセルA1に「こんにちわ」という文字を入力して、それをメッセージボックスで出力する処理を書きました。これでボタンを押したらマクロが動くようになりました。

f:id:hmmr:20160610124620j:plain

f:id:hmmr:20160610124625j:plain

以上

VBAメモ マクロを書く準備

マクロは

1.VBE画面を出す。

2.標準モジュールを挿入する

3.subプロシージャを書く

の3つのステップのみですぐに書けます

マクロの本を読むと、まず最初にマクロを記述するためのVBEを開くために開発タブを出すようにして・・・という設定変更をしなければならないとよく書いています。しかしそんなことをしなくてもすぐにマクロは書けます。

 

1.VBE画面を出す

エクセルを開いたら[Alt] + [F11]を押すとVBE画面を開くことができます。特に開発タブを出さなければいけない事はありません。

 

2.標準モジュールを挿入する

左ペイン「プロジェクトエクスプローラ」で、どこでもいいので開いたブックの項目にマウスカーソルを合わせてで右クリック→「挿入」→「標準モジュール」

f:id:hmmr:20160610121856j:plain

 

3.subプロシージャを書く

2で追加された標準モジュールで「sub test」と入力して「Enter」を押下

 f:id:hmmr:20160610121921j:plain

以上でマクロを書く準備は終わり。

ゆっくり動画

実はゆっくり動画作ってました

 

最近やっと本腰を入れられるようになったのと、ある程度のクオリティにもっていけたので紹介をば・・・

 

f:id:hmmr:20150526005104p:plain

f:id:hmmr:20150526005122p:plain

f:id:hmmr:20150526005142p:plain

 

気づかないレベルで少しずつ改良していっており、

今は結構聴きやすくなってます。。。。。多分(;´∀`)

ゆっくりボイスが好きな人、小説が好きな人はよかったら観てやってください