まりふのひと

Excel/「このブックでマクロが使用できない‥」が出た時に調べたい項目

≪目次≫


いきさつ

 ロビーのほほ笑みさんの 6月30日のブログ「家計簿 マクロが無効になった」

ymahatue1003.hatenablog.jp
f:id:ymahatue1003:20190630113244j:plain

スクリーンショットを取ってブログに貼り付けて!」とお願いしたのは自分だが、(1)キャプチャーになっている。(2)しかも画像が縮小されている‥‥
薄くなった目を凝らし、メッセージを読み取り、

Excel2016 このブックでマクロが使用できないか、またはすべてのマクロが無効になっている可能性があります
ググった‥‥
 1件1件サイトを確認したが、全て、、が「設定」に関するもの。
辿ったのか検索し直したのかは不明だが、「先月頭まで使えてたVBAで「実行時エラー'1004'」が表示される」

answers.microsoft.com

 直接関係ないが、タイトル「先月頭まで使えてた‥‥」につられて読んでいくと
‥‥ これについてつらつら調べていたところ、某掲示板に次の4月のパッチが影響していると記載があったので
[MS12-027] MSCOMCTL.OCX の脆弱性により、リモートでコードが実行される (2012年4月10日)
http://support.microsoft.com/kb/2664258/
 記事の通り.exdファイルを私のXP-Excel2007端末で検索し、全て削除してみると、無事バッチブックも.xlsm形式で保存できました。
マクロ上のオープンするブック名も.xlsmに書き換え起動してみると、無事問題なく動きました。


 Excel2016は小さなトラブルがあることを聞いているが、Microsoft社もコッソリ パッチを当てているかも...
その証拠に「Office更新プログラム」があっても、前後で11桁のバージョンが変わらない‥‥(たぶん)


 第2弾が入ってきた。

ymahatue1003.hatenablog.jp
 検索等して勉強シマシタガ・・・・・
日暮日記さんも色々勉強され、エクセルのバージョンを上げてみたらと教えていただき下記の通り更新しました。
  1. エクセル⇒アカウント
  2. office更新プログラム⇒更新オプション⇒今すぐ更新
更新終了後に家計簿を入力後「メニュー」ボタンをクリックすると警告が出ず「メニュー」ボタンがが表示されました。


おッ! 日暮れ日記さん すごいッ


次に同じ現象が発生した時のために

 今回の成果として、まとめた。(Excel2013の場合)

  1. マクロを動かすための(最低限の)設定
    1. ファイル ⇒ オプション ⇒ セキュリティ センター ⇒[セキュリティ センターの設定]
    2. マクロの設定 :◉警告を表示しすべてのマクロを無効にする
      メッセージバー:◉ActiveXコントロールやマクロなどのアクティブ コンテンツがブロックされた場合、すべてのアプリケーションのメッセージバーを表示する
  2. マクロ(今回は「マクロ家計簿77.xlsm」)を単体で起動し、
    • 「セキュリティに関する通知」が出ること。
    • VBA/コンパイルエラーが無いことを確認する。
    • Subプログラム(今回は「メニューを開く」があること。
  3. マニュアル操作でサブプログラムが動くか‥‥
    1. 問題のブック(今回は「家計簿77」)を開き、
    2. [開く]からマクロを開く。
    3. [マクロを有効にする]。(出るはず)
    4. Alt+F8 ⇒ サブプログラム(メニューを開く)を[実行]する。
  4. マニュアル操作でサブプログラムが動いたら、ブックのマクロ起動ボタン(今回は[メニュー])を作り直す。
    1. 家計簿77.xlsx を開く。
    2. 家計簿77から マクロ家計簿77.xlsm を開く。
    3. 家計簿77.xlsx のシート見出しを右クリック ⇒ シート保護の解除
    4. [メニュー]ボタンを右クリック ⇒ マクロの登録
    5. マクロ「マクロ家計簿77.xlsx!メニューを開く」を選択し、[OK]。
  5. マクロ起動ボタンを作り直しても正常に動かない場合は‥‥
     ファイル ⇒ アカウント ⇒ Office更新プログラム ⇒ 今すぐ更新
    しかないかなぁ~


編集後記(グチ?)

  1. スクリーンショットを取って、ブログに貼り付けてェ~」と言ったのは自分だけど‥‥
    • 「キャプチャー」になっている‥‥ これでは全体が見えないなぁ~
    • しかも画像が縮小されている。これで文字を読み取れ ‥‥ とは、高齢者に優しくないッ!
      日暮日記さんの時は作り直してくれた...
  2. エラーが出た時はエラーメッセージでネットを検索するように‥‥ と何度も言っている積りだが忘れているのだろうか。「あなたの秘書ではありません!」は、記憶にあるか...
  3. 「OSとアプリ、バージョンは書きなさいッ」もない。
  4. 「ご指導宜しく」とあるので、このページで指導することにしょう。苦労して作ったのだから、まさか「いや」とは言いまい...

Windows10の絵文字(タッチキーボード)、Internet Explorer(IE11)ではやはり化ける

 既定のブラウザーMozilla Firefox、ブログやニュースの更新有無チェック(RSS,フィード)は、MozillaThunderbird の[ブログとニュース]に任せている。
miyakebitoさんの件名を見ていて‥‥

f:id:ogohnohito:20190702114539j:plain:h160
「使わなかった刈払機を見てもらった」は気なることがあるので、あえて「未読」にしてある...

  • タッチキーボードを使っている‥‥(たぶん)
  • ブラウザーは何を使っているのかなぁ‥‥ まだ Internet Explorer だったら悲劇なも...

と言うのも、ブラウザーにより絵文字のデザインが変わる,特に Internet Explorerはモノクロになる?
改めて確認した。...

f:id:ogohnohito:20190702115908j:plain

 やっぱりなぁ~~~

Excelのエクスポートで作成したpdfファイルの表を、コピペでWord経由Excelにつなげた

≪目次≫


いきさつ

 「世界一やさしいExcel2016」(インプレス)の第1章「イベント会場担当表」に続き、第2章の「店舗別売上集計表」をサンプルを見ながら独断と偏見で、Excel2010 で作った。
右図のサンプルとは、

  1. 色は違う(Excelのバージョンの違いがある)が、大勢には影響ない...
  2. 積み上げ棒グラフと区分線、合計の表示、100%積み上げ」を参考に、積み上げ棒グラフに合計金額を入れてみた。
    • 区分線(レイアウト・タブ ⇒[線]⇒ 区分線)を入れたいところだが、(1)3-Dグラフには入れられない。(2)合計金額表示の副作用で入れられない。
  3. 円グラフの代わりにドーナツグラフ*1 *2 にし、中心に売上の総合計をテキストボックスで入れた。
  4. 完成した「Sec2_店舗別売上集計表.pdf」(OneDrive)
    • 上のリンクをクリックすると、ブラウザー上で見ることができる。(たぶん)

 ところで、自分も作ってみたいが、データの入力が面倒‥‥ と言う人に朗報が...


pdfファイルの表をWord経由でExcelにつなぐ

 前述のpdfファイルは

  • Excel2010の[ファイル]⇒ 保存と送信 ⇒ PDF/XPSドキュメントの作成 ⇒[PDF/XPSの作成]から作成した。
  • Windows10にも 印刷で「Microsoft Print to PDF」を選択すれば pdfファイルを作成できるが、Excelにつなぐので、Excelで作成した方がいいのではないかと...根拠レス

 以下は Office2013 で試行錯誤した結果‥‥

  1. pdfファイルを Acrobat Reader で開く
     上記の「Sec2_店舗別売上集計表.pdf」は OneDrive上にあるので‥‥
    1. リンクをクリックする。
    2. pdf が表示されたら[ダウンロード]をクリックする。
    3. 保存(ダウンロード)し、
    4. ダウンロードしたファイル(Sec2_店舗別売上集計表.pdf)を Acrobat Reader で開く
  2. pdfの表をWordにコピペする
    1. 店舗売上高の表を選択し、クリップボードにコピーする。
  3. pdfの表をWordに貼り付け、Wordの表をExcelにコピペする
    1. Wordを起動し、
    2. 印刷の向きを「横」にする。(用紙をA4判 横置きにする)
    3. 貼り付ける。
    4. 表が出来たら、表全体を選択しコピーする。
    5. Excelを起動し、
    6. 貼り付ける。
      • 貼り付けのオプションは、[貼り付け先の書式に合わせる]


  • テキストでは、E列(売上合計)および G列(前年同期差)~ I 列(構成比)は数式と書式設定で作る。
  • 円グラフは計算した値で作ることになっているので、コピペした値で作れるか‥‥ 検証していない。

*1:Excel2013で内円の大きさを変えるには、系列 "構成比" を右クリック ⇒ データ系列の書式設定 ⇒[系列のオプション]⇒ ドーナツの穴の大きさ

*2:Excel2013でデータラベルを上下に表示するには、データラベルを右クリック ⇒ データラベルの書式設定 ⇒[ラベル オプション]⇒「区切り文字」を(改行) にする。

赤くなったミニトマト、破裂する前に収穫した

 昨年に続き、庭にミニトマトを植えている。今年は畝が長いので8本(8本×59円/本=472円)植えたが、チョッと混みあっているが、順調に生長した‥‥ と思う。(摘芯済み)

梅雨入り後、らしい天気が続いているが、実も色づいている。
このまま放っておくと晴れた日に破裂するのではないか‥‥ との思いから、赤くなった実を収穫した。

f:id:ogohnohito:20190630045413j:plain:w240

畔の草刈り、イネ科雑草を意識し「高刈り」を肝に銘じた

≪目次≫


いきさつ

 26日梅雨入りし、外での作業が出来ない。で、梅雨明け後に来る草刈りに備え、グーグル先生に聞いた‥‥

草刈りの最適な時期や実施頻度とは?(引用:お庭の生活救急車

niwa-seikatsukyukyusya.com
◆草刈りは1年に3回行うのが理想的
  • 6~7月
     草が成長する前の時期であり、草がもっとも成長する時期でもあります。 雨が多く、陽の光も強いので、ぐんぐんと草が伸びていきます。 本格的に伸びてしまう前に草刈りを行うことで、草が大きく成長しすぎるのを防ぐことができます。
  • 9~10月
     9月以降は気温が徐々に下がっていき、成長の勢いが落ち着いてくるころです。 この時期の草は元気がないため、刈り取ることで成長しにくくなります。
  • 11~12月
     本格的に寒くなってくると、草がどんどん枯れていきます。 枯れ草を刈ることで、景観を美しく保つことができます。
◆天候などを考慮することも大切
 植物の成長は水と陽の光、そして栄養素が必要です。土にいくら栄養があっても、水や陽の光がなければ成長しません。
たとえば、たっぷり雨がふったあとに天気のいい日が続いてしまうと、草の成長スピードはふだんよりも早くなってしまいます。要するに、草を刈ったあとすぐに雨がふり、晴れの日が続いてしまう場合、草を刈っても数日後には草が生い茂ってしまうということです。
 では、どんなタイミングで草刈りをすればいいのかというと、雨がふったあと、晴れの日が続いて草が伸び切ったあとが最適と言えます。これから伸びるであろう草を刈っても、結局は伸びてしまいますが、ある程度成長しきった草を刈れば、それ以上の成長は見込めないので、より効率的に草刈りができるようになります。
なので、草刈りをするときは、雨が降ってから数日後がおすすめです。

田んぼの草刈りは計画的に!正しい手順で作業をすすめるポイント(引用:草刈り110番

kusakari-rits.jp◆田んぼで行う草刈りの役割
 草刈りをせず放置をすれば雑草は伸び、新しい雑草も生えてきます。そのうちススキや雑木が生えてきて、その場所は山へと戻り始めます。逆に草刈りを頻繁に行っていれば雑草が伸び続けることはなく、背の低い雑草が畦畔を覆い始めます。この状態が進行すると野芝という野生の芝に覆われ、草刈りの手間が少なくなるというのです。

◆害虫対策としての側面もあります
 草刈りにはもう一つ大きな役割があります。それはカメムシを寄せ付けないということです。カメムシは稲の籾(もみ)を食べてしまうため、食害被害につながる恐れがあるのです。
 しかしカメムシを寄せ付けないためには、草刈りをする際に守らなければいけない点があります。それは畦畔に生えている草を地面の際まで刈り取らないという点です。際まで刈ってしまうとイネ科雑草が畦畔に増えていきます。イネ科雑草は成長点が根元の方にあるため他の雑草が負けてしまうために、このようなことが起こります。
 カメムシはイネ科雑草や稲の穂が好物という特徴があるため、イネ科雑草が増えると食害被害にあうリスクが増す可能性があります。

◆田んぼの草刈りは計画的に進める
 田んぼの草刈りの主な目的は上で述べたようにカメムシからの食害被害を防ぐためです。
そのためイネ科雑草が育つサイクル・稲穂になる時期を逆算し草刈りのスケジュールを立てます。イネ科雑草は地面の際ではなく高さを10センチメートルほど残して刈り取ること(高刈りといいます)で新芽を出しにくくなり徐々に減っていくといわれています。

◆刈った草は処分する
 刈り取った草の処理はどうしていますか。もし草をそのまま放置をしていた場合には、自然分解が始まります。するとミミズが草を目的に集まることがあります。
ミミズが集まれば、そのミミズを目的にモグラが集まるかもしれません。モグラは穴を掘る生き物ですから畦に穴を掘り、畦が決壊する恐れがあります。
また放置しておくことで、その部分は土が柔らかくなりやすいといわれています。畦の決壊を防ぐために刈り取った草は処分いたしましょう。

畦草刈りはするべき?草刈りをするポイントは「カメムシ」と「イネ科」(引用:ファーマリーブログ)

farmally.jp 田植えが終わった後、次の仕事は「畦草刈り」です。畦の草刈りは、一見「田んぼに草が生えているわけじゃないからほっておいても良さそうなのに、なんでわざわざ草刈りをするのだろう?」と思う方も多いのではないでしょうか。
畦草刈りは、単に見栄えをよくするためにしているのではなく、お米を育てる上で重要なポイントがあるのです。
◆一番避けたいのは「カメムシ」の発生
 畦草刈りをする重要なポイントは「カメムシ」の発生を抑えるためです。実は、カメムシはイネ科の雑草や稲の穂が大好き。そのため、雑草にイネ科のものがあると、カメムシが寄ってきてしまいます。
そのため、カメムシを寄せつけないように畦草刈りをすることが重要になるんですよ。
カメムシが寄るのは「イネ科」の雑草
 畦草刈りで重要なのは、「イネ科の雑草」を無くすことです。そのため、イネ科の雑草が生えていない場合は、それほど畦草刈りに躍起になる必要はありません。
イネ科の雑草で代表的なものはメヒシバ・エノコログサ・イヌビエなど。田んぼの周辺に生えやすい雑草なので、あなたの圃場の近くにも生えていないかチェックしましょう。
「イネ科」の雑草は、他の科の雑草よりも草が生える力が強く、全て刈り取ってしまうと次に生えてくるのはイネ科の雑草だらけになってしまいます
◆10~15cmほど高めに刈ることがおすすめ
 イネ科の雑草の成長を抑えるためには、根本から全てを刈り取るのではなく、10cm〜15cmの高さを残して刈り取ることが重要です。10cm程度残して切り取ると、イネ科の幼芽をつむことができ、成長を鈍化させることが可能です。「イネ科の植物が残っているから心配…」という方。実は、普通に稲刈りをしたときよりも、10cmほど残して高刈りをしたほうが、カメムシの発生が4分の1ほどになったというデータもあるんですよ。
また、根本から刈り取っても、15cm程度残して刈り取っても、1ヶ月後のイネ科雑草の草丈は変わりません。雑草を刈りすぎて、逆にイネ科の雑草ばかりになってしまわないように、高刈りをすることがおすすめです。
◆畦草刈りをしたときの草の処理方法
 畦草刈りをした後の雑草は、そのまま置いておいてもいいのか迷う方も多いのではないでしょうか。もちろん、そのまま置いておくと、日陰ができるため雑草の成長を遅らせることもできますし、何より手間がかからないのでラクチンです。
ですが、雑草の分解をするためミミズが集まり、ミミズを餌とするモグラが集まり、畦を破壊してしまう可能性もあるんです。そのため、できれば一箇所にまとめておくことがおすすめです。

 正直なところショックを隠し切れない。イネ科の雑草を育てる草刈りをしていた...
長男に謝らなければならない。そう言えば「コンクリート畔と接している土の畔を削りたい‥‥」と言っていたが、そういう背景があたのだろう。


イネ科の雑草

メヒシバ(雌日芝)

www.vegrass.com
日当たりのよい野原や道端、畑地、空き地などに多く生育し、繁殖力が強く、夏の強害草の一つである。
7~9月にかけて細長い花茎の先に細く、てのひら状に穂をつける。
オヒシバ(雄日芝)に比べて繊細な姿なのでメヒシバ(雌日芝)の名がついている。

エノコログサ(狗尾草)‥‥ 俗称 ネコジャラシ
イヌビエ(犬稗)

主に水田に生えるタイヌビエやノギ*1 の長いケイヌビエなど稗の仲間を総称してノビエという。

ギョウギシバ(行儀芝)

ja.wikipedia.org 茎は地表を這い、節ごとに葉をつける。茎は非常に丈夫で硬く、断面はやや楕円形をしている。節々から根を出してしっかりと地表に固定し、あちこちで枝を出して広く地表を覆う。茎の表面にはつやがあり、赤みを帯びる。少々踏まれてもつぶれることはない。節ごとに短い枝を出し、やや立ち上がることもある。
葉は節毎に出て、少し葉鞘になって茎を抱え、先端は葉となって細く伸びる。葉の部分は緑色でつやがなく、ほぼ地表と水平に広がるか、少し斜め上に向く。
 茎が水中を這うように生長する「あれ」に違いない。今度、写真を撮ろう...(まりふのひと)

参考サイト

 ググって見つかった参考になるページ。PCに保存すると埋もれるので‥‥

草刈りは、やりすぎに注意-草刈り高が問題雑草の発生に及ぼす影響-(引用:静岡県農林技術研究所)

https://www.agri-exp.pref.shizuoka.jp/suidenpro/pdf/topic04-01.pdf
f:id:ogohnohito:20190708181945j:plain:right:w96 あぜや雑草地の草刈りは、雑草や害虫の発生を抑える上で重要な作業である。ところが、調査してみると草刈りをすることによって、かえって田んぼの害虫である斑点米カメムシが増加してしまう例が見られた。雑草や害虫を抑えるはずの草刈りによって、どうして害虫が増えてしまったのだろうか?
≪草刈りによって問題雑草が増えるしくみ≫
f:id:ogohnohito:20200726113056p:plain:w512

高刈りによるイネ科雑草と斑点米カメム シの抑制(引用:農機具ならアグリズ)

http://www.agriz.net/contents/rich/002/szongk.pdf
 本稿では、草刈りによって斑点米カメムシが増加したメカニズムについて解説するとともに、斑点米カメムシの発生の抑制に有効な草刈りの手法として、「高刈り」の可能性を紹介したい

斑点米カメムシ類の個体数抑制を考慮した畦畔管理技術 - 滋賀県

https://www.pref.shiga.lg.jp/file/attachment/2010426.pdf
 5月上旬の水稲早生品種「コシヒカリ」苗移植の場合, 畦畔雑草の刈り払いでは,7月上旬(イネ出穂期3週間前頃)と7月下旬(イネ出穂期頃)の2回草刈り体系はイネの出穂期前後の6週間にわたって畦畔上のイネ科雑草の出穂を抑制するため, 畦畔上の斑点米カメムシ類の生息個体数が抑制され, 斑点米の発生が低減した。

畦畔・農道の草刈りはカメムシを水田に追い込むか?(引用:農研機構)

https://www.naro.affrc.go.jp/publicity_report/publication/files/tohoku_news09p5.pdf
 以上の結果,草刈りが出穂期14日以前ですと,虫はたとえ水田に追い込まれても定着しません。ところが,出穂期やその21日後ですと,虫が水田に追い込まれ,そこに留まることが判明しました。

お米のカレンダー(引用:全国農業協同組合連合会 宮城県本部)

f:id:ogohnohito:20190708183215j:plain:right:w120www.mg.zennoh.or.jp

  • 自分にとっては「基礎」の絵があった。「月旬」での主な作業の表もあるので、myCollection に pdf で保存した。


*1:穀物の穂先の毛(goo辞書)

Excel/第1月曜日の日付の求める数式をグーグル先生に教わった

 21日金曜日の「世界一やさしいExcel2016 in 田布施町高齢者いきいき館」の時間に、内職して「第1月曜日を求める数式」を探した‥‥ が、数式を理解できなかった...

  • 第一月曜の日付をもとめるには(引用:エクセル関数リファレンス)
     第一月曜日の日付を求めるには、まず、DATE関数を使用して、その月の1日に1週間(7日)を足した日を求めます。次に、WEEKDAY関数を使用して、その月の1日の前日、つまり前月の末日の曜日に対応する数値を求め、先ほど求めた日から引くことで第一月曜日の日付を求めることができます。
    =DATE(B1,B2,"1")+7-WEEKDAY(DATE(B1,B2,"1")-1,2)

帰宅後、改めてサンプルを作りながら試したら確かにできた。が、相変わらず 😵 の状態...


1.数式を日本語で書いてみる
  • 8日の日付(DATE(B1,B2,"1")+7)から、1日の前日(=前月の末日:DATE(B1,B2,"1")-1)の戻り値(曜日コード)を引く

 これまで、Weekday関数の第2引数(種類)は殆ど省略していたが、今回は「2」となっている。
改めてググる‥‥

  • Weekday関数の種類
    • 上記のWeekday関数では「2」を使っているが、Excel2010以降では 11 も使える。

≪考察≫

  1. 引数2(種類)を「2」にしているのは、月曜日の戻り値を「1」にしたいため...
  2. 8日の日付を作っているのは、上記の戻り値の最低値が「1」であるため...

 改めて実例で検証した。

  • Weekday関数の種類別戻り値(抜粋)
種類 日曜日 月曜日 火曜日 水曜日 木曜日 金曜日 土曜日
1または省略 1 2 3 4 5 6 7
2または11 7 1 2 3 4 5 6
3 6 0 1 2 3 4 5
  • 試してガッテン
基準日 基準日+7
B
基準日前日の曜日 Weekdayの戻り値
D
結果
B - D
2019/4/1 2019/4/8 日曜日 7 2019/4/1
2019/5/1 2019/5/8 火曜日 2 2019/5/6
2019/6/1 2019/6/8 金曜日 5 2019/6/3
2019/8/1 2019/8/8 水曜日 3 2019/8/5

 だれがこんな法則? を見つけたのだろうか。自分なら、即、VBAで作るところだが...


第1月曜日以外の曜日もできるはずなので...

「はず」を Excel2010 で検証した。

  • 1行目にWeekday関数の第2引数(種類)を横に入力
  • セルA4以下にWeekday関数の第1引数(シリアル値=日付)を入力
    • 必ず1日付けとする。
  • セルB4に数式:=(A4+7)-WEEKDAY(A4-1,B$1) を入力
  • 他のセルはセルB4の数式をフィルハンドルでコピー

≪結果≫
 第1火曜日~第1日曜日ともWeekday関数の第2引数(種類)を変えるだけで出来た。

ヘッダー下に使って面白い[こよみモード]を入れた

 たまたま見つけた「こよみモード

staff.hatenablog.com
 こよみモードは、PCからご利用できます。ブログのダッシュボード(http://blog.hatena.ne.jp/)を開き、「ブログの概要」でタブ「こよみモード」をクリックしてください。公開範囲はブログの所有者およびブログメンバーです。他ユーザーのこよみモードを見ることはできません。
f:id:ogohnohito:20190621190109j:plain:right:h48お気に入りに登録し使っていたが、記事の管理よりこよみモードの方が使い勝手がいいし面白い。で、Wordでバナーを作り、ブログヘッダーのタイトル下を変更しようとしたが、今になってこよみモードの出し方がわらない...

  1. 右側の管理メニューの「ダッシュボード」を選択する。
  2. 「マイブログ」が表示されるので、ブログ名をクリックすると「ブログの概要」になる‥‥ はず。
  3. こよみモード を選択する。

 バナーを fotolife にアップロードし、HTMLタグを参考に「タイトル下」のHTMLを作成した。

<a href="https://blog.hatena.ne.jp/はてなID/はてなID.hatenablog.jp/koyomi" title="こよみモード(まりふのひと専用)"><img align="middle" height=36 src="https://cdn-ak.f.st-hatena.com/images/fotolife/*/はてなID/yyyymmdd/yyyymmdd185159.jpg"></a>