2019-09-01から1ヶ月間の記事一覧

数学パズル

先日、イベントで家族と大学へ遊びに行った。数学科のブースでは、例年のごとく算数の問題が幾つか出されている。その一つをマクロで解くことに挑戦した。 【問 題】 整数x,y,zの取りうる組合せ数を答えなさい。 条件1.x,y,zは自然数である。 条…

鶴亀算を解くユーザー定義関数

鶴亀算。つるかめ算。ツルカメ算。個人的には「二元一次方程式」の代名詞的存在だったが、元はそうでもないらしい(今回初めて知りました)。 ja.wikipedia.orgこれをExcelで解くユーザー定義関数を、マクロで作成してみた。 鶴亀算を解くって、どんな時だろ…

ArrayEditのまとめ

作成したArrayEditの「途中形態」が、時系列で次々と増えてきた。そこで、現時点の最終形をこちらに載せることにした。今後は、ここだけ更新することにする。※結構なボリュームなので、畳んで置いておく。↓ ScriptingRuntimeの参照設定を要す。 ◆Seaquenceの…

指定した原紙シートをコピーして新たなシートを作成し、シート名を指定した名前に変更し、その中の指定アドレスに指定配列を丸ごと貼り付けてついでに列幅まで調整したうえでテーブル化し、最後にそのテーブルを戻り値とする関数

過去に作成して提供した、Excelツールの改修を依頼された。作ったのは、2年ほど前か。中身を見て、愕然とする。その作りの、何と酷いことよ。 その中で、結構な行数を費やしている箇所があった。 ある範囲のデータを、配列に格納する。 「原紙」シートをコ…

配列内の文字を複数条件で置換

文字を置換したい。シート上であれば、これで片が付く。 だが今回は配列内の文字に対し、複数条件で置換したい。挑戦してみた。 折角なので、先日来作成しているArrayEditClassの機能拡張で対応してみた。 作戦は、こうだ。 ParamArrayキーワードで、置換前…

Androidアプリ超入門

買ってしまった。とうとう。ついに。作って楽しむプログラミング Androidアプリ超入門作者: WINGSプロジェクト?江賢,山田祥寛出版社/メーカー: 日経BP販売発売日: 2019/04/27メディア: 単行本この商品を含むブログを見るやりたいことは幾つかあるが、まずは…

新規シートを追加してから貼り付け の続き

先日、配列をシートに貼り付ける際、新規シートを追加してから貼り付けられるようにしてみた。 infoment.hatenablog.comこのマクロには問題があった。例えば配列を「新規シートのA1」に貼り付ける際、引数を渡した時点で「新規シートのA1」は存在しないため…

互換モードのExcel(拡張子.xls)を、まとめて「拡張子 .xlsx」に変換

先日は、互換モードのファイルパスを受け取り、以下の拡張子で保存し直すマクロに挑戦した。 「.xlsb」(バイナリー ※指定時のみ) 「.xlsx」(マクロを含まない場合 ※自動判別) 「.xlsm」(マクロを含む場合 ※自動判別) infoment.hatenablog.com今日は、…

.xls を .xlsb や .xlsm で保存

昨日は、拡張子が「.xls」のファイルが大量にあったため、これを「.xlsx」に自動更新するマクロに挑戦した。 infoment.hatenablog.comすると、日頃親交のある狸さんから、拡張子「.xlsb」についてご紹介を受けた。 (いつも有難うございます)。そこで本日は…

.xls を .xlsx で保存

あるシステムからダウンロードしたExcelファイルが、拡張子「.xls」だった。一月に一ファイルで、3年分ある。なぜか開くのに時間が掛かるし、容量も大きい。そこで、一つずつ開いては「.xlsx」で保存する地味な作業に突入して、二つ目で嫌になった。そうだ…

新規シートを追加してから貼り付け

昨日の記事で、次のような操作を行った。 シート追加 配列貼り付け infoment.hatenablog.com 日々、それなりに登場する操作だ。 唐突に、「毎回シートを追加する」のが面倒くさくなった。 そこで、配列をシートに貼り付ける関数に、新規にシートを作成するか…

指定列の項目毎に、別の指定列について最大値を求める

先日、次のような課題を目にした。 例えば、昨日のなんちゃって個人情報にて。各都道府県の、最年長者を抽出した表を作成したい。 挑戦してみた。 今回の作戦は、こうだ。 指定範囲を一行ずつ、都道府県をキーにして辞書に登録する。 同じ都道府県の場合は年…

名簿マスターから、印刷用にデータを抽出して並べる

昨日は名簿マスターに於いて、頭文字毎の区分けに挑戦した。 infoment.hatenablog.com元々今回のネタは、職場の電話帳改善に端を発している。今回はクライマックス、「名簿マスターから、印刷用にデータを抽出して並べる」に挑戦する。 A4用紙に、何列かに…

イニシャルで区分

昨日は、名簿のふりがなを「ふりがな」「フリガナ」「フリガナ」の三種類で切り替えることに挑戦した。 infoment.hatenablog.com今日は、この名簿をイニシャルで区分することに挑戦する。 本シリーズは元々、職場の「電話帳改善」に端を発している。ヒヤリング…

「ふりがな」と「フリガナ」と「フリガナ」

昨日は情報を持たないセルに、正しいフリガナを設定することに挑戦した。infoment.hatenablog.com本日も、フリガナの設定についてアレコレ試してみよう。昨日、B列(名前列)の漢字に対し、フリガナを設定した。そこで、なんちゃって個人情報本来の書式に戻…

ふりがなの設定

職場の電話帳が、Excelで作成されている。この電話帳を良くしようという、職場の改善活動にまつわるお話。電話帳をそのまま公開できるはずもなく、今回も毎度の「なんちゃって個人情報」のお世話になる。さて、なんちゃって個人情報には、「なんちゃって人名…

将来の夢

職場で、Excelについて頼られることが多くなった。 頼られるってのは、まあ有難いことだ。それで、たまには皆さんの前で教鞭(?)をふるったりすることも、ある訳で。 そのような機会に面白いと思うのは、どのように初歩的な内容の講座であっても、必ず何か…

一つ上のセルの値のみ取得

今日は、こちらの記事に便乗。 koroko.hatenablog.comコロ子さんが挑戦されているように、「フィルターが掛かっていても」がポイントだと思う。 以下の条件を全て満足する場合、簡略化が可能だ。 選択セルが空白である。 一つ上のセル(隠れているものを除く…

二つの配列を比較する

昨日は、二次元配列で、最後尾に新たな一行または一列を追加してみた。 infoment.hatenablog.com今日は、表で何某かレコードに変更があった場合を想定し、二次元配列に格納して比較することに挑戦する。 今回も、北陸県を用いたサンプルで検討した。 表Aと…

二次元配列で、最後尾に新たな一行または一列を追加

昨日は、二次元配列での列編集に挑戦した。 infoment.hatenablog.com行に対して作りためた様々を、列に横展開。これでまた、一気に充実した。しかし今までのものは全て、既存データのやりくりでしかない。そこで今回は、新規データの追加に挑戦する。 今回挑…

二次元配列で列を編集

昨日までは、二次元配列で様々な「行の編集」を行ってきた。 infoment.hatenablog.com infoment.hatenablog.com infoment.hatenablog.com infoment.hatenablog.com infoment.hatenablog.com infoment.hatenablog.com今回は一旦これから離れて、列の編集につ…

二次元配列で列をフィルター(正規表現)

昨日は、二次元配列の指定列内で、特定の文字がある行を残す、または消すことに挑戦した。 infoment.hatenablog.comここまで来ると次は正規表現を用い、もう少しだけ複雑な抽出をしてみたくなる。挑戦してみよう。 といっても、内容は昨日と殆ど変わらない。…

二次元配列で列をフィルター

一昨日は、二次元配列内の任意の二行を入れ替えることに挑戦した。 infoment.hatenablog.com本日は、指定列内に特定の文字がある行を残す、または消すことに挑戦する。今回は、以下の4条件を個別に満足するフィルターを作ってみよう。 部分一致 または 完全…

二次元配列で任意の二行を入れ替え

昨日は、二次元配列で任意の一行をカット&挿入することに挑戦した。 infoment.hatenablog.com今日は、今までに作ったものの組合せで、任意の二行を入れ替えることに挑戦。 今回は、昨日作成したものを二回連続で行うことで実現する。 片方を切り取って、入…

二次元配列で任意の一行をカット&挿入(再挑戦)

昨日は、二次元配列で任意の一行に対し何某かを挿入する際、xlUPとxlDownを選択できるようにした。 infoment.hatenablog.comこの結果を踏まえ、先日の ↓ に再挑戦する。 infoment.hatenablog.com昨日も紹介したように、xlUPで上に押し上げるということは、指…

二次元配列で任意の一行に空白挿入 xlUP or xlDown

昨日は、二次元配列で任意の一行に対し、以下を行うことに挑戦した。 コピー または カット 挿入 または 貼り付け infoment.hatenablog.com一見上手くいったような結果を得たが、残念。最後尾に挿入する場合、上手くいかない。そりゃ、そうだ。現時点では、…

二次元配列で任意の一行を「コピー or カット」して「挿入 or 貼り付け」

昨日は二次元配列で、任意の一行に以下を行うクラスモジュールを作成した。 削除 空白化 空白挿入 infoment.hatenablog.com本日は更に、以下を加えることに挑戦する。 コピーまたはカット 挿入または貼り付け クラスモジュール(ArrayEditClass) まず、モー…