2020-01-01から1年間の記事一覧

エクセルVBA100本ノック。13本目:文字列の部分フォント

この記事から得るもの 指定した文字に色を付け、太文字にする。 InStr関数をループして処理する方法が分かる。 目次 1 今回のお題 2 今回のお題の意図 3 回答 4 一言 1 今回のお題 選択セル(Selection:複数範囲あり)の文字列に「注意」という文字があ…

エクセルVBA100本ノック。12本目:セル結合を解除

この記事から得るもの 結合解除後のセルに値を入れる。 結合セルが何個あるのか調べる方法。 目次 1 今回のお題 2 今回のお題の意図 3 回答 4 結合セルが何個あるのか調べる 1 今回のお題 A1から始まる表範囲のC列に金額が入っています。 しかし、とこ…

エクセルVBA100本ノック。11本目:セル結合の警告

この記事から得るもの 結合されているセルに対して、「結合禁止」などのコメントが可視的に確認が可能。 目次 1 今回のお題 2 今回のお題の意図 3 回答 4 サイトの模範解答 5 一言 1 今回のお題 11…同じ数字が並んでいる、これは結合したのか、、、画…

エクセルVBA100本ノック。10本目:行の削除

この記事から得るもの 表から、不要な行の削除の仕方が分かる。 目次 1 今回のお題 2 今回のお題の意図 3 回答 4 AutoFilterを使った削除 1 今回のお題 画像のように「受注」シートに今月の受注データがあります。 受注数が空欄かつ備考欄に「削除」ま…

エクセルVBA100本ノック。9本目:フィルターコピー

この記事から得るもの Collectionオブジェクトの特徴。 AutoFilterの使い方。 Worksheetが存在するかチェックする処理。 Set 変数 = Worksheets(””)のスマートな書き方。 目次 1 今回のお題 2 今回のお題の意図 3 回答 4 Worksheet追加時のスマートな…

エクセルVBA100本ノック。8本目:点数の合否判定

この記事から得るもの Countifで条件分岐方法。 If文のネスト。 目次 1 今回のお題 2 今回のお題の意図 3 回答 4 Function(自作関数)を作成した方のコード 5 結論 6 クラスモジュールで書いてみた 1 今回のお題 「成績表」シートに5教科の成績表…

エクセルVBA100本ノック。7本目:日付データの扱い

この記事から得るもの IsDate関数、DateSerial関数の使い方がわかる。 目次 1 今回のお題 2 今回のお題の意図 3 回答 1 今回のお題 A列は文字列データ(表示形式が文字列)で日付が入っています。 日付とみなされる場合はB列に月末日付をmmddの形式で出…

エクセルVBA100本ノック。6本目:セルに計算式

この記事から得るもの R1C1参照で、セルに計算式を入れる方法が分かる。 目次 1 今回のお題 2 今回のお題の意図 3 回答 4 特定の文字列が含まれているか判断する 1 今回のお題 画像のようにA1から始まる表があります。 C列にA列×B列の計算式を入れて…

エクセルVBA100本ノック。5本目:セルの計算

この記事から得るもの 空白を含むデータがあるテーブルの処理をする際の、範囲設定方法が分かる。 目次 1 今回のお題 2 今回のお題の意図 3 回答 4 神髄先生の回答 1 今回のお題 画像のようにB2から始まる表があります。 B列×C列を計算した値をD列に入…

エクセルVBA100本ノック。4本目:セルの消去2

この記事から得るもの 計算式が入っているセルは削除せずに、データ(定数)が入っているセルのみを削除する方法が分かる。 目次 1 今回のお題 2 今回のお題の意図 3 回答 4 お題の意図が分かっている回答 1 今回のお題 画像のように1行目に見出し、A列…

エクセルVBA100本ノック。3本目:セルの消去

この記事から得るもの 特定のセル(No)は残したまま、データ部だけを消す方法がわかる。 データの行数は任意でも同じようにデータだけ消去できる。 目次 1 今回のお題 2 今回のお題の意図 3 回答 4 備考:Cellsで別のSheetは指定できるが… 5 最終回答 …

エクセルVBA100本ノック。2本目:セルのコピー2

この記事から得るもの セルのコピペ後の、値貼り付け、書式は元のをそのまま使う方法が分かる。 目次 1 今回のお題 2 今回のお題の意図 3 回答 4 感想 1 今回のお題 「Sheet1」のA1:C5のセル範囲を、「Sheet2」のA1:C5にコピーしてください。 数式は消…

エクセルVBA100本ノック。1本目:セルのコピー

この記事から得るもの エクセルの神髄というサイトから、ExcelVBAの記述のお題が出されるものに、回答していきます。 基本操作の勉強としてブログにまとめていきます。 目次 1 今回のお題 2 今回のお題の意図 3 回答 4 値のみを代入する場合 1 今回のお…

病院で使うような「番号呼出システム」を作ってみた。

この記事から得るもの 病院で使うような「番号呼出システム」が、ノートPC1台とモニタ1台で作成できる。 目次 1 動画で使用イメージを確認 2 設計 3 感想 4 実際に使ってみたい方はnoteで無料DL 1 動画で使用イメージを確認 何はともあれ、以下の…

エクセルVBAで音声ファイルを再生する。

この記事から得るもの VBAで音声ファイルを再生する方法が分かる。 目次 1 音声ファイルを再生しようと思ったきっかけ 2 音声ファイルを再生するためのAPI宣言 3 345番を呼び出す! 4 まとめ 1 音声ファイルを再生しようと思ったきっかけ 市役所で住…

Sendkeysの{ENTER}が効かない理由

{ENTER}はテンキーのENTERである! Webアプリケーションの入力作業が面倒で、Excelに入力用データを作成し、Sendkeysで自動入力できるようなマクロを作りました。 汎用機時代は、ちゃんと動作していたのですが、システム換装によりWeb化した後、「TAB」「E…

エクセルVBA API ユーザフォーム画面を最大化できるようにする。

ユーザーフォームには、画面の最大化する機能がない。 画面の通り、デフォルトではユーザーフォームに「画面の最大化、最小化」の機能はありません。 では、どうするかWindowsAPIを使えば設定が可能です(コードをコピペするだけでOKです)。開発環境は、…

エクセルVBA API FindWindowでハンドルを取得し、SetForegroundWindowで画面を最前面に表示する。

メモ帳を画面の最前面に表示する。 機能としては、「AppActivate」と全く同じですが、あえてAPIを使って処理をしてみました。 APIの理解の手助けになれば、幸いです。 目次 1 環境 2 得られる効果 3 AppActivateの場合 4 APIを使って、メモ帳を…

クラスモジュールで、勤務年数と勤労10年以上の対象者になるのか判定する処理を作ってみた。

クラスモジュールをとにかく使ってみよう! クラスモジュールの利点がよくわかりません。Twitterの猛者からアドバイスをもらってみたものの、まだお粗末なコードしか書けませんでしたが投稿します。正直、Excel関数でできることです。クラスで記述するとこう…

VBAでの改善集。Twitterの返信まとめ

VBAで何を解決しましたか? 先日、以下のツイートをしました。VBAを使って何を解決してきましたか?ふと、そんなことを思いました。私の場合、物流系なので「請求審査業務」の効率化を解決しました。他の人はどんなことやってきたのか、かなり気になります。…

改正版、【アンケート自動生成VBA】

前回の反省点を元に機能を追加 この記事は過去記事を元に作成しています↓↓ bimori466-1.hatenablog.com エクセルでアンケートを鬼のように作成されている方の助けになればと作成した記事です。前回の4つ反省点として 1 入力支援フォームの作成(「質問Sh…

リストボックスの値を、他のユーザーフォームから更新できない。

このブログから得るもの リストボックスの値を、他のユーザーフォームから更新する方法が分かる。 目次 1 背景の説明 2 解決策。まず空白を追加する。 3 感想 4 参考サイト 1 背景の説明 アンケートを内容が変っても楽に作れるVBAを作成しようと、ユ…

「エクセルVBA」の凄さを語ってみる。

この記事から得るもの エクセルVBAの可能性は無限大だということを感じられます。 目次 1 エクセルVBAでできること 2 クラウドワークスの需要を調べてみた 3 ツイッター上の猛者たち 4 自分の経験談 5 終わりに 1 エクセルVBAでできること 表…

マクロ作成依頼 「毎週の定時報告資料を簡単にしたい」

このブログから得るもの マクロはあくまで自分の業務効率化のために、使おうと思えます。 目次 1 背景 2 依頼発生 3 作成過程 4 私の異動後… 5 感想 1 背景 システムを組織で扱う際は、「運⽤者」、「管理者」に分けられます。私は管理者側の業務をや…

パーフェクトエクセルVBAを読んで。

新たな発見 パーフェクトエクセルVBAを読みました。とても有益な本です。VBAは7年ほど触っているのですが、知らないことがたくさんです。新たに知ったことをまとめます。1 Variantは他の言語にはない。2 ネーミングの名前 ・キャメル記法 (例) userN…

エクセルVBA ユーザーフォーム 家計簿にマルチページを適用する。

家計簿入力を、一覧ではなく種類ごとに分けたい 前回作成した記事の更新です。 bimori466-1.hatenablog.com 家計簿の入力で、野菜を買ったら以下のフォームから入力していました。 しかし、これ「探しずらい」(-_-;)。レタス買ったけど、どこに入力するねん…

エクセルVBA備忘録 マルチページコントロールをコードから作成する。

家計簿の野菜入力を色別にしたい エクセルで家計簿を作っていて、野菜、肉、魚などをコンボボックスから選んで入力しています。3か月ほど使うと問題がでました。野菜の項目が増えすぎました。画面に収まらないほど大量に…。こんなに種類あるんですね。「食…

ユーザーフォーム カレンダーフォームから日付をテキストボックスに取得する。

エクセルVBAには、カレンダーの機能がない… HTML画面だと、カレンダーから日付を選択してテキストボックスに入れるって普通に使っていますね。しかし、エクセルVBAにはカレンダーがないのです。昔は、Accessのカレンダーコントロールを使えばツールボッ…

タスクスケジューラで、5分間隔でPowerShellからExcelを起動する。

タスクスケジューラから起動したマクロBOOKは動くのか? 定期的に処理したものがある場合、Windowsであれば「タスクスケジューラ」に登録して時間を設定しておけば処理されます。今回の主眼は、2点。1 タスクスケジューラから起動したExcelのWorkbook…

FSOで写真の更新日時を調べる。スマホの写真をまとめたい。

FileSysytemObjectを使って、写真の作成、更新、アクセス日時を調べる 過去記事で、PowerShellを使って写真の作成日時を元にフォルダを作成し格納するというShellを作ったことがありました。bimori466-1.hatenablog.com ExcelにはFSOがあり、「作成、更新…