日本語入力ソフトとVBAの覚え書き

・各種日本語入力ソフトの辞書解説 ・実用Excel VBA ・ボダブレ辞書

(Excel VBA) よく使うブック、シート、セルの指定方法

VBAのコードでよく使うブック、シート、セルの指定方法をまとめてみました。

ウィンドウ

Excel2010までは一つのウィンドウ内にブックが複数存在できるMDI方式でした。Excel2013からは一つのウィンドウが一つのブックのSDI方式になっています。

' アクティブなウィンドウ
ActiveWindow

ブック

' 全てのブック
Workbooks

' このブック (コードが書かれているブック)
ThisWorkbook

' アクティブなブック (現在一番手前にあるブック)
ActiveWorkbook

シート

' 全てのシート (ワークシート, グラフシート, その他のシートを含む)
Sheets

' 全てのワークシート
Worksheets

' 選択されたワークシート(1つ以上)
SelectedSheets

' アクティブなシート
ActiveSheet

' 名前が'Sheet1'のワークシート
Worksheets("Sheet1")

' シートインデックス(左から1, 2, 3,……)による指定
Worksheets(1)

セル (単一セル)

' アクティブなセル(現在のセル。カーソルが乗っているセル)
ActiveCell

' A2セル (2行目, 1列目)
Range("A2")
Cells(2, 1)

' R行目, C列目 (R = Rows:行, C = Column:列)
Cells(R, C)

' 使用している範囲の最終セル (入力されていたり、書式が設定されている)
SpecialCells(xlCellTypeLastCell)

' 選択範囲内の一番はじめのセル(左上のセル)
Selection(1)

' 選択範囲内の最終セル(右下のセル)
Selection(Selection.Count)

セル (範囲)

' 全てのセル
Cells

' 選択されたセル範囲
Selection

' A1:C5
Range("A1:C5")
Range(Cells(1, 1), Cells(5, 3))

' 1行目
Rows(1)

' 3行目~5行目
Rows("3:5")
Range("3:5")
Range(Rows(3), Rows(5))

' A列(1列目)
Columns("A")
Columns(1)

' C列~E列(3列~5列)
Columns("C:E")
Range("C:E")
Range(Columns(3), Columns(5))

Android端末のみ : GoogleスプレッドシートでGoogle日本語入力のユーザー辞書を作成する方法

Google日本語入力のユーザー辞書を自分で作るにはもちろんパソコンがあった方が便利ですが、Android端末のみでも可能です。Android端末のみでGoogle日本語入力のユーザー辞書ファイルを作るには、Googleスプレッドシートでやるのが断然簡単です。テキストファイルなのでGoogleドキュメント……と一瞬考えるかもしれませんが、単語の管理のしやすさ、編集のしやすさ、タブ区切りテキストへの変換などGoogleスプレッドシートで作成する方が簡単でしかも便利です。

必要なアプリ

ここでは、ESファイルエクスプローラーProとJota+(TextEditor)を使っています。
play.google.com
play.google.com

スプレッドシートで単語を編集する

Googleスプレッドシートを開きます。
f:id:dz_dzone:20170718091954j:plain

A列に '読み(ひらがな)'、B列に '単語'、C列に '品詞' を入力します。
f:id:dz_dzone:20170718092018j:plain

Google日本語入力で使える品詞

Google日本語入力 for Androidで使用可能な品詞は以下の通りです。(2017.7.20現在)
分からない場合はとりあえず '名詞' で入れておけば後でもなんとかなります。

品詞 品詞 品詞
名詞 動詞カ行五段 独立語
動詞ガ行五段 接頭辞
動詞サ行五段 接尾一般
人名 動詞タ行五段 接尾人名
地名 動詞ナ行五段 接尾地名
組織名 動詞バ行五段 助数詞
固有名詞 動詞マ行五段 終助詞
名詞サ変 動詞ラ行五段 顔文字
名詞形動 動詞ワ行五段 アルファベット
数字 動詞ハ行五段 記号
形容詞 動詞一段 句読点
副詞 動詞カ変 短縮読み
連体詞 動詞サ変 抑制単語
接続詞 動詞ザ変 候補のみ
感動詞 動詞ラ変 -

タブ区切りテキストファイル形式にエクスポートする

右上のメニューをタップします。
f:id:dz_dzone:20170718092018j:plain

'共有とエクスポート'をタップします。
f:id:dz_dzone:20170718092357j:plain

'名前を付けて保存…'をタップします。
f:id:dz_dzone:20170718092539j:plain

'TSV (現在のシート)'をタップしてから、'OK'をタップします。
f:id:dz_dzone:20170718092628j:plain

'ドキュメントのタイトル'を入力してから、'保存'をタップします。
f:id:dz_dzone:20170718093219j:plain

端末にダウンロードする

Googleドライブを起動します。
f:id:dz_dzone:20170718093319j:plain

さきほど保存したファイルを長押しします。
f:id:dz_dzone:20170718093347j:plain

'ダウンロード'をタップします。
f:id:dz_dzone:20170718093507j:plain

ダウンロードされました。(基本的に端末またはSDカードのDownloadフォルダ)
f:id:dz_dzone:20170718093517j:plain

テキストエディタ文字コードをUTF-16LEに変換する

スプレッドシートからエクスポートされたファイルの文字コードUTF-8になっています。このままですとGoogle日本語入力でインポート出来ない場合があるので、テキストエディタ文字コードをUTF-16LEに変換して保存し直します。

ファイルマネージャでDownloadフォルダを開き、さきほどダウンロードしたファイルをタップします。
f:id:dz_dzone:20170718100111j:plain

文字コードの変換できるテキストエディタ(ここではJota+)をタップします。
f:id:dz_dzone:20170718100157j:plain

テキストエディタで開きました。(文字コードUTF-8であるのが確認できます)
f:id:dz_dzone:20170718100341j:plain

右上のメニューをタップします。
f:id:dz_dzone:20170718100600j:plain

'ファイル'をタップします。
f:id:dz_dzone:20170718100619j:plain

'名前を付けて保存…'をタップします。
f:id:dz_dzone:20170718100638j:plain

左の'元ファイルに…'をタップします。
f:id:dz_dzone:20170718100653j:plain

'UTF-16LE'をタップします。
f:id:dz_dzone:20170718100713j:plain

念のためファイル名を付けて、'OK'をタップします。
f:id:dz_dzone:20170718100802j:plain

保存されました。
f:id:dz_dzone:20170718100816j:plain

Google日本語入力にインポートする

ファイルマネージャから先ほど保存した辞書ファイルをタップします。
f:id:dz_dzone:20170718104438j:plain

Google日本語入力の辞書ツールをタップします。
f:id:dz_dzone:20170718104450j:plain

'OK'をタップします。
f:id:dz_dzone:20170718104503j:plain

インポート出来ました。
f:id:dz_dzone:20170718103244j:plain

'ファイルが読み込めません'と表示された場合

こちらの記事を参考に、Google日本語入力にストレージ権限を与えて下さい。
dz11.hatenadiary.jp


以上です。

アルテ on Mozcのユーザー辞書インポートで「ファイルが読み込めません」が出る場合の対処法

「アルテ 辞書 読み込めない」「アルテ 辞書 反映されない」などのキーワードで検索されてる方がおりました。実際に自分でも読み込もうとしてみると読み込めなかったのでここで対処法を説明します。

f:id:dz_dzone:20170716155818j:plain

アルテ on Mozcにストレージ権限を与える

Android OSのバージョンによってはこの操作が必要な場合があります。

設定>アプリ>'アルテ on Mozc'と開いて「権限」をタップ、「ストレージ」権限をオンにする

f:id:dz_dzone:20170716160118j:plain  f:id:dz_dzone:20170716160140j:plain

f:id:dz_dzone:20170716160227j:plain f:id:dz_dzone:20170716160243j:plain

ONになったところ

f:id:dz_dzone:20170716160327j:plain

 

タブ区切りテキスト形式の文字コードをUTF-16LEにする

インポートするテキストファイルの文字コードUTF-8では読み込めない場合があります。Google日本語入力およびMozcの辞書は基本的にUTF-16LEが推奨されています。テキストエディタにてUTF-16LEに変更して保存して下さい。

(Excel VBA) 縮小して全体を表示するコマンドをボタンにする

「縮小して全体を表示する」って割と使うと思うんですけど、ボタンがないんですよね。いつもわざわざ「セルの書式設定」開いて設定してるんですが、正直面倒くさいですよね。なので、VBAでコマンド作ってボタン化しています。

コード

Sub DisplayWholeByReducing()
    ' ◆◆◆ 縮小して全体を表示するコマンド ◆◆◆
    With Selection
        .WrapText = False
        .ShrinkToFit = True
    End With
End Sub

Simeji for Androidのユーザー辞書をタブ区切りテキスト形式(Google, ATOK, POBoxなど)に変換する手順

Simeji for Androidからエクスポートしたユーザー辞書の形式は独自のテキスト形式で、その他の日本語入力アプリへ変換するのが難しい。ここではテキストエディタ表計算ソフトを使って多くの日本語入力アプリで採用されているタブ区切りテキスト形式への変換手順を解説します。

目次

使用するツール

ここではテキストエディタとしてgPadを、表計算ソフトはExcel2013を使用しています。

なお、MacExcelLibreOffice等およびテキストエディタでも変換可能です。

表計算ソフトについて注意点

LibreOffice CALCやApache OpenOffice CALCでは列が1,024列しか扱えません。そのため、これから紹介する方法での変換は1,024個の単語までしか出来ません。Excel2007~2016では16,384列扱えます。

 

変換手順

多少くどい部分があると思いますがこまかく説明していきます。

ファイル操作の手順(1)

Simeji for AndroidからエクスポートしてPCにコピーしたユーザー辞書ファイルです。

f:id:dz_dzone:20170607230533j:plain

念のためファイルを複製します。

f:id:dz_dzone:20170607230803j:plain

テキストエディタでの手順(1)

テキストエディタで開きました。

f:id:dz_dzone:20170608015019j:plain

まず、先頭の「{"EN_KEY":,"EN_VALUE":,"JAJP_VALUE":[」の部分を削除します。

f:id:dz_dzone:20170608015300j:plain

次に検索をします。

f:id:dz_dzone:20170608015501j:plain

検索文字列は「JAJP」として検索します。

f:id:dz_dzone:20170608015528j:plain

単語とよみの境の部分である「],"JAJP_KEY":[」を削除します。

f:id:dz_dzone:20170608015611j:plain

境の部分で改行します。

f:id:dz_dzone:20170608015759j:plain

改行されました。

f:id:dz_dzone:20170608015840j:plain

文末の「]}」を削除します。

f:id:dz_dzone:20170608015915j:plain

ファイルを上書き保存します。

f:id:dz_dzone:20170608020117j:plain

ファイル操作の手順(2)

上書きされたファイルです。

f:id:dz_dzone:20170608020316j:plain

拡張子を「csv」に変更します。警告ダイアログが出てくるので「はい」をクリックします。変更したら、表計算ソフトで開いて下さい。

f:id:dz_dzone:20170608020414j:plain

表計算ソフトでの手順

エクセル2013で開きました。

f:id:dz_dzone:20170608020627j:plain

データ範囲を選択して下さい。A1セルを選択した状態で「Shift+Ctrl+End」を押すことで一発で選択できます。

f:id:dz_dzone:20170608020646j:plain

コピーします。

f:id:dz_dzone:20170608021300j:plain

セル「A4」に移動して、コンテキストメニュー(右クリック)から「形式を選択して貼り付け>行列を入れ替える」をクリックします。

f:id:dz_dzone:20170608021427j:plain

行と列が入れ替わって貼り付けられました。

f:id:dz_dzone:20170608021608j:plain

1~3行目は不要になったので行削除します。行番号1~3をドラッグ選択して右クリック>削除です

f:id:dz_dzone:20170608021743j:plain

次にA列を選択して切り取ります。

f:id:dz_dzone:20170608021939j:plain

C列を選択して、右クリックから「切り取ったセルの挿入」を選択します。

f:id:dz_dzone:20170608022012j:plain

これでA列に「よみ」、B列に「単語」のシートが完成です。

f:id:dz_dzone:20170608022200j:plain

ここで一端、表計算ソフトの形式で保存しておきます。(後で加工が可能なためです)

f:id:dz_dzone:20170608022341j:plain

次に再度「名前を付けて保存」で「テキスト(タブ区切り) (*.txt)」で保存します。

f:id:dz_dzone:20170617113740j:plain

元のファイルに上書きしないよう注意して下さい。

f:id:dz_dzone:20170617114116j:plain

警告ダイアログが出ますが、「はい」をクリックして下さい。

f:id:dz_dzone:20170617114345j:plain

これで保存されました。Excelを閉じて下さい。警告ダイアログは「保存しない」をクリックします。(4つ上の画像のところで既に保存してあるのでここでは保存しないでOKです)

f:id:dz_dzone:20170617114601j:plain

 

テキストエディタでの手順(2)

さきほど保存したタブ区切りテキスト形式のファイルをテキストエディタで開きます。

f:id:dz_dzone:20170617114828j:plain

文字コードが「Shift-JIS」になっていますので、変換先の日本語入力ソフトの様式に合わせて保存し直して下さい。

f:id:dz_dzone:20170617115042j:plain

以上です。

補足

POBoxのユーザー辞書には「品詞」はないので、このまま文字コードと改行コードを合わせればインポートできますが、Google日本語入力(Mozc系を含む)やATOKの場合は「品詞」を追加する必要があります。その場合、Excel上のC列を編集するのが楽です。品詞を入力後にタブ区切りテキスト形式で保存して下さい。

 

関連リンク

SIGMA 19mm F2.8 DNを買いました。……沼なの?

f:id:dz_dzone:20170527010654j:plain

広告を非表示にする

明るい単焦点レンズを買いました。

最近ずっとしまい込んでいたんですが、急にレンズが欲しくなったのです(唐突

f:id:dz_dzone:20170522211259j:plain

SONY SEL50F18 50mm F1.8です。ボディは結構前に買ったSONY NEX-5R

 

スマホを撮ってみました。

f:id:dz_dzone:20170522211619j:plain

ボケ味がよさげ。

 

うちのこかわいい

f:id:dz_dzone:20170522212611j:plain