2015年8月30日日曜日

エクセル VBA 関数を使う

VBAから関数Matchを使う。 たとえば、対象Book(TargetBook)のシート("word")のエリア(A1:A20000)から”てきとう”を検索するにはこのようにする。
Dim r As Variant
    r = Application.WorksheetFunction.Match("てきとう", TargetBook.Sheets("word").Range("A1:A20000"), 0)
返り値 r には 行番号が入っています。
しかしながら、範囲内に検索文字がない場合にError となりますので、対応します。

エクセル VBA ファイル Open/Close

エクセルファイルをOpen/Closeします。
Function ファイル読込(BkName As String, ObjBk As Workbook)
    Application.ScreenUpdating = False
    Set ObjBk = Workbooks.Open(FileName:=BkName, Notify:=False)
'   ObjBk.Windows.Application.Visible = True ' これは使わない。
    Windows(ObjBk.Name).Visible = True
    Application.ScreenUpdating = True
End Function
BkNameにフルパスを含むファイル名を入れて関数を呼びます。
ObjBkにWorkbookのファイルポインタを入れて返します
非表示でOpenするときにはVisibleをFalseにします。
(デフォルトでTrueなのですが、説明のために。) 保存終了にするときはSaveChangesをTrueにします。

2015年8月24日月曜日

Windows10 コントロールパネルなど

左下ウインドウズアイコンを左クリックでメニューが出ます。

Windows10 文字が読みにくい

設定→システム→ディスプレイの「テキスト、アプリ、その他の項目のサイズを変更する」がデフォルトで125%になっているのが原因のようです。100%に戻しましょう。一番左が100%です。

Windows10 クリーンインストール (無償アップグレードから)

Windows7からWindows10に無償アップグレードするのですが、今使っているHDDは保存しておきたい。
ということで、クリーンインストールします。


  1. Windows7のバックアップを取っておきます。
  2. Windows10のDVDを作っておきます。
  3. Windows10にアップグレードします。
  4. アップグレード後のプロダクトキーを保存(写真とか取っておく)。
  5. Windows7に戻す
  6. HDD入れ替え
  7. Windows10をクリーンインストール


windows10 計算機とペイントとメモ帳

左下の「WebとWindowsを検索」に

メモ帳を開くには、「notepad」と入力。
ペイントを開くには「mspaint」と入力。
電卓を開くには「calc」と入力。

タスクエリアにクリップしておきましょう。

windows10 よく使うフォルダ 最近使用したファイルの表示をやめる

windows10 の 最近使用したファイルが多くてうざいです。

エクスプローラ→表示→オプションから、

「最近使ったファイルをクイックアクセスに表示する」と「よく使うフォルダーをクイックアクセスに表示する」のチェックを外します。

すっきりします。

2015年8月22日土曜日

エクセル VBA オプション

エクセル VBA の先頭で

Option Explicit

と記述すると、宣言していない変数でErrorとなります。
スペルミス用ですね。

エクセル VBA オブジェクトと変数

なんしか、エクセルを学習します。

オブジェクト

階層構造になっています。

Application→Workbooks→Worksheets→Range

変数

変数にオブジェクトをとり出す。
Sub test_00()
    Dim testBook As Workbook
    Dim testSheet As Worksheet
    Dim testRange As Range
    Set testBook = Workbooks("テスト.xlsm")
    Set testSheet = testBook.Worksheets("Sheet1")
    Set testRange = testSheet.Range("A1")
    testRange.Value = 20
End Sub

直接代入

一つだけなら直接代入します。
Sub test_01()
    Workbooks("テスト.xlsm").Worksheets("Sheet1").Range("A1").Value = 20
End Sub

2015年8月19日水曜日

cygwin 64 bit cocot

cygwin を使ってwin32アプリを起動すると文字化けします。
cygwin 64bitの場合、makeしないといけないようです。
1.cygwin のパッケージのwget を取得しておきます。
2.apt-cyg をインストール
wget https://raw.githubusercontent.com/transcode-open/apt-cyg/master/apt-cyg
実行できる場所に移動します。
chmod 755 apt-cyg
mv apt-cyg /usr/local/bin/
3.cocotのダウンロード、インストール
> apt-cyg install  libiconv libiconv-devel inetutils  # 必要なパッケージのインストール
> git clone http://github.com/vmi/cocot
> cd cocot
> ./configure && make && make install
これで

> cocot ipconfig

> cocot ping 10.32.123.45
などの文字化けが解消します。