プログラミング・マクロ
1 Excelマクロ習得のきっかけ 2 LibreOffice Calcマクロ 3 マクロの準備 【1】シート上に成績表データを入力 【2】セキュリティレベル設定 4 コードの記述場所 5 コードの記述 6 マクロの実行 7 最後に 1 Excelマクロ習得のきっかけ 今は昔、もう…
1 LibreOfficeへの乗り換え 2 マクロの機能 3 マクロの特徴 【1】繰り返し定型処理を自動化 【2】セルの内容に応じた処理を実行 【3】すばやい効率的な処理 4 まとめ(マクロの勧め) 1 LibreOfficeへの乗り換え Microsof Office のサポート終了を機…
1 Microsof Office のサポート終了 2 LibreOfficeへ移行 3 移行理由、メリット (1) 無料 (2) Linuxにも対応 (3) Microsoft Office 形式との互換性 (4) 利用期限 4 デメリット 5 マクロ機能 6 仕入れた知識の紹介 7 まとめ 1 Microsof Office のサポ…
自宅PCにインストールして利用してきた Microsoft Office のサポート終了を機に、無料の LibreOffice へ乗り換えることにしています。Microsoft Office は、一般家庭で使うにはあまりにも高額過ぎます。 ただ、せっかく身につけたVBA(Visual Basic for Appl…
先日、LibreOffice Calc のマクロを、この記事に書きました。ダイアログ上のテキストフィールドの文字列を、シートのセルに転記するマクロです。 Option VBASupport 1 REM ***** BASIC ***** Option Explicit 'Subルーチンの外側でoDlgを宣言しておく Dim oD…
1 ダイアログを利用したマクロ自作 2 自作マクロのコード 3 LibreOffice BasicとVBAの同時使用 1 ダイアログを利用したマクロ自作 LibreOffice Calc のダイアログ(Excelのユーザフォームに相当)について、先日からこのブログに書いています。 ダイアロ…
1 LibreOfficeへの移行 2 ダイアログの作成 3 ダイアログを開く操作 4 まとめ 1 LibreOfficeへの移行 無料のOfficeソフト LibreOffice (リブレオフィス)でも、Microsoft製品のユーザフォームに相当する機能を使えることが分かり、明るい希望が見えて…
1 Milcrosoft Officeと決別 2 Libreでマクロとフォーム 3 VBAでのマクロ機能 4 ダイアログ 5 まとめ 1 Milcrosoft Officeと決別 Ubuntu(ウブントゥ)Linux PCに、LibreOffice(リブレオフィス)という、無料Officeソフトウェアパックをインストールし…
ワープロソフトWordの文書内データを、次から次へと入れ替えるVBAマクロのコードを、昨日のブログに書きました。「差し込み印刷」を、マクロで実行するものです。 文書内に、枠線透明の罫線(表)を配置しておき、その中に、データを順次挿入していくマクロ…
Wordマクロで、文書内にデータ(文字列)を挿入するとき、 データ挿入の位置、場所の指定は、Excelのようには簡単ではありません。 Excelでは、セルを特定するだけで、どこでも自由にデータを挿入することができます。 一方、Wordでは、セルのようなものがな…
先日、Word文書内に挿入したブックマークのテキストを、次から次に順次入れ替えるVBAマクロのコードを、当ブログ記事で紹介しました。 次のVBAコードです。Dim i As IntegerFor i = 1 To 5 With ThisDocument ' ブックマークにテキストを挿入 .Bookmarks(1).…
Word文書内に、他のファイルのデータを順次挿入する操作は、割と簡単です。「差し込み印刷」というWord機能です。とても便利な機能なので、よく使われています。 その差し込み印刷の機能を使用せず、VBAマクロで処理しようとして、ちょっとつまづいたことは…
Excelマクロでデータを挿入するとき、挿入位置は自由に選ぶことができます。データを挿入したいセルを特定すればよいからです。 ところが、Wordマクロで文書内に文字列を挿入しようとすると、Excelのようにはいきません。予め、文字列を挿入したい位置に、目…
最近は、通勤列車内で、Linuxコマンドや、シェルスクリプト関係を覚えようとしています。 その一方で、VBA(WordマクロやExcelマクロ)から、遠ざかっています。 そのため、VBA関係の知識を忘れつつあります。 私のぼんくら頭脳は、もともとメモリ容量が不足…
データベースシステムからエクスポートしたデータを、表計算ソフトExcelで開くと、各データの先頭に「'」(アポストロフィー)がくっ付いていることがあります。 これは、データベースによくある仕様です。私の会社の業務系システムも、そのような仕様になっ…
私が会社で扱っている業務系システムは、本社のサーバーとつながったデータベースシステムです。サーバー内に格納されたデータを、その都度引っぱり出してきては、日々の業務を処理しています。 その業務系システムには、エクスポート機能が用意されています…
zip圧縮ファイルの解凍作業を自動化するために、 「Excel作業をVBAで効率化」 というサイトに掲載され、一般向けに提供されている Excel VBAマクロのコードを利用させてもらいました。 上記サイトの紹介記事は、 ⇒ こちらをご覧ください。 上記サイトで提供…
日本郵便のWebサイトで提供されている郵便番号CSVデータは、zip形式で圧縮されています。 zip形式なので、Windowsの標準機能を使って解凍(展開)ができます。つまり、特別な解凍ソフトを用意する必要はありません。 けれども、全都道府県分の47個のファイル…
Webサイトからダウンロードしたzipファイルの解凍を、VBAマクロによって自動化できないか、先日、Bing AI チャットに質問してみました。 それに対しBingの回答は、「VBAでZip解凍はできますよ。」ってものでした。 さらには、Bing AI は、そのBVAコードまで…
日本郵便のWebサイトにおいて、郵便番号データが配布されていて、必要とする方は、自由にダウンロードできます。 それについては、 ⇒ こちらの記事をご覧ください。 ダウンロードすると、CSVファイルがzip形式で圧縮されています。 Windows PCでは、特別な解…
日本郵便のWebサイトにおいて、郵便番号データが配布されています。著作権は日本郵便が保持していますが、必要とする方は自由にダウンロードすることができます。 そこに置かれているのは、郵便番号のデータそのもの、CSVファイルだけです。ですから、検索機…
4月の転勤で、自宅からかなり遠い職場まで、長距離通勤が始まりました。 しかも、これまで担当していた業務とは全く異なる分野なので、新しく覚えないといけないことがいっぱい。戸惑いながら仕事をしています。年をくった新米社員です。 手探りでの業務な…
ワープロソフト Wordには、ブックマークという便利機能があります。 Word VBA においても、よくBookmarkオブジェクトが使われます。 Bookmarkオブジェクト使用の一例は、 ⇒ こちらの記事をご覧ください。 このブックマークは、ユーザーが文書中の任意の位置…
最近、通勤列車の中で、伊藤潔人著「Word VBA 入門(2)」を読んでいます。 この書籍では、Word文書中の表をVBAで扱う方法が解説されています。 読んでいて、「Word VBA って、ちと面倒だな。」って、思ってしまいました。 表の中の先頭セルに文字列を入力…
Word文書中の表に入った文字列を、VBAで取り出すには、 Dim myTxt As String myTxt = ActiveDocument.Tables(1).Cell(1,1).Range.Text とします。 このマクロコードを実行すると、変数myTxtに、表の左上端に入っている文字列が格納されます。 ただし、表の中…
今朝の通勤列車の中で、 伊藤潔人著の「Word VBA入門(2)」 を読んでいて、少々、衝撃を受けることがありました。 それは、Excel VBA における、Rangeオブジェクトの既定のプロパティについてです。 (Word VBA の本なのに、Excel VBA のことを学びました…
Wordマクロ(Word VBA)で、表内の文字列を取り出すことがあります。 このとき、何やらへんてこな記号みたいなものが、取り出した文字列にくっ付いています。 その変な記号が邪魔になります。そして、何より、その記号の正体が不明です。 下の画像をご覧くださ…
伊藤潔人著「Word VBA 入門」を読むようになって、 時々、「オブジェクトブラウザー」を見るようになりました。 従前は、全くと言っていいほど、利用していなかったツールですが。 「オブジェクトブラウザー」においては、Wordオブジェクトのプロパティやメ…
昨日(2023年2月7日)、Word VBA の Range に関する記事を書きました。 Word VBA で、Word文書内の 特定の文字列範囲 ある連続した領域 を指定するにはRangeを使用するけれども、このRangeは、Documentオブジェクトに用意されている「メソッド」とされていま…
Word VBA で、Word文書内の 特定の文字列範囲 ある連続した領域 を指定するには、Rangeを使用します。 Rangeは、Documentオブジェクトのメンバーで、 例えば、 ActiveDocument.Range とすると、アクティブな(つまり作業中の)文書の、本文全体を指すRangeオ…