2022年9月25日日曜日

【GAS】GASによる Googleドキュメントの文字色を一括置換する方法

ふとそういう質問を Quora で発見したため、ネットでコードを探しましたが、似たようはものはありましたが全く同じものはなかったので作成してみました。

コードと利用方法

イメージとしては、たとえば赤文字をすべて黄色文字に変更したい場合に使うという感じになります。Google ドキュメントにはそのような機能がないため、Google Apps Scriptにて実装する必要があります。


2022年9月25日 @kimipooh

2022年8月31日水曜日

Web版Gmail で他の Gmailアドレスを送受信するためには

Web版Gmailで他のGmailを送受信する場合、受信については元の Gmailの入っているメールを消して取り込むという形になります。

ここでは送信と受信それぞれ分けて設定方法をお知らせします。

送信設定(他のGmailアドレス)

1. Web版Gmail ( https://gmail.com )の設定 > すべての設定にある「アカウントとインポート」タブを開き、「名前:」より「他のメールアドレスを追加」リンクをクリックします。

2. メールアドレスに 送信したい Gmailアドレスを入力します。そして「次のステップ」ボタンをクリックします。

3. 所有者確認のために下図の「確認メールの送信」ボタンをクリックします。


4. 送信された確認メールにある「確認コード」を下記に入力するか、URLを開いて認証してみてください。これで「名前: 」の欄に 追加したい Gmailアドレスが追加されており、メール作成時の From(差出人)のところで、追加したGmailを選択できるようになっているはずです。


受信設定(他のGmailアドレス)


まず、追加したい他のGmailアドレスについて
1. 2段階認証を有効にする
2. アプリ パスワードでログインする を参考にアプリパスワードを生成してメモする
をしてください。

1. Web版Gmail ( https://gmail.com )の設定 > すべての設定にある「アカウントとインポート」タブを開き、「他のアカウントのメールを確認:」より「メールアカウントを追加する」リンクをクリックします。



2. 他のGmailアドレスを入力して「次へ」ボタンをクリックします。


3. 「他のアカウントからメールを読み込む(POP3)」を選択されているので、「次へ」ボタンをクリックします。


4. 下記の設定をして「アカウントを追加」することで受信設定は完了です。
 ユーザー名: 他のGmailアドレス、
 パスワード:生成していた他のGmailアドレスのアプリパスワード
 を入力。
 下記にチェックをいれておきます。
 「メールの取得にセキュリティ保護された接続(SSL)を使用する
 「受信したメッセージにラベルをつける
 
 *なお冒頭で述べたように、取得したメッセージを他のGmail側のサーバーに残すことができません。ですでの1つのGmailでのみ使えるということになりますね。


2022年8月31日 @kimipooh

2022年8月30日火曜日

Google アカウントの無効化管理ツールの登録と解除について

手持ちのアカウントで実際に試したので、備忘録をこめてメモしておきます。


無効化管理ツールの解除について


下記にアクセスすると、「プランを無効にする」ボタンになっていることを確認します。この時点では無効化管理ツールが有効になっています。

https://myaccount.google.com/inactive

「プランを無効にする」のボタンをクリックします。


下図のように「開始する」になっていれば、無効化管理ツールが無効にできたということになります。


無効化管理ツールの開始について


下記にアクセスして、「開始する」ボタンをクリックします。

https://myaccount.google.com/inactive




どの程度アクセスしなかった場合に無効化するか設定します。デフォルトは3ヶ月になっています。


無効化が発動した場合、アカウントを削除するかどうかを選択します。デフォルトはオフです。


設定できたら、「プランを開始する」が「プランを無効にする」というボタンに変わっています。


2022年8月30日 @kimipooh

2022年7月15日金曜日

Intel MacbookPro 15inch で正式リリースした Google ChromeOS Flex を起動してみた!

 古いPCやMacをサクサク動作に復活させる「ChromeOS Flex」が正式リリース(Gigazine)

など、いくつかのニュースが飛び込んできたので、早速手持ちの Intel Macで動作を試してみました。

必要なもの


  1. 8GB以上のUSBメモリ
  2. 外部キーボードとマウス(Intel Macが USB type-C なら左記デバイスをIntel Macに差し込むためのアダプタ)
  3. ネットワーク(Wi-Fi等)

手持ちの Intel MacBookPro 15inch (15-inch 2016, 機種ID: MacBookPro13.3)では、内蔵キーボードとマウスが認識しませんでした。
*ものすごい古い MacBookAir 11inch(Mid 2011, 機種ID: MacBookAir4,1) は内蔵キーボードとマウスを認識しました。

機種IDから、モデルを調べる方法:


STEP 1. USBメモリにリカバリーディスク(インストーラー)を作成

こちらは、 M1 Macでも作成できます。
個人使用としてはChromeブラウザに、Chromebookリカバリーユーティリティをインストールし、こちらから作成することになります。

詳しくは、下記を参考にしてみてください。


STEP 2. USBメモリからのブート


  1. Intel Macの電源を切る
  2. Intel Mac に 作成した ChromeOS Flexのリカバリー USBメモリを差し込む
  3. Option ボタンを押しながら、電源ボタンを押す。
  4. ブートメニューがでてくるので、「EFI Boot」を矢印キーで選択し Enter
*MacBookAir 11inch(Mid 2011, 機種ID: MacBookAir4,1) の場合、ブートメニューで「Windows」を選択すると、Windows用の ChromeOS Flex として起動しているようにみえました。

これで Google ChromeOS Flex の起動画面を経て、英語版の画面がでてきます。
言語はすぐに変更可能。「Get Started」(日本語だと「始める」)のボタンを押すと、インストールするか、「試してみる」というLive起動(USB起動)をつかうか選択肢がでてきます。

「試してみる」を選択すると、ネットワーク選択画面になるので選択しましょう。
あとは Google アカウントのログインが促されるのでログインするという感じです。



2022年7月15日 @kimipooh

2022年7月14日木曜日

Search Console Insights が Google アナリティクス 4 をサポート

 「Search Console Insights が Google Analytics 4 をサポートするようになりました」というメール通知がきました。確かに、Google Analytics 4 のみを設置している場合には、すでに使えるようになっています。


UAとGA4の共存ケースは、UAの関連付けを削除する必要あり

本ブログの場合には、下記のように UAのほうに Insights が関連付けられているということですね。UAのサポート終了が、2023年7月1日のため、それ以降に関連付けを削除しようかなぁと思っています。


関連付けの確認方法


Google Search Consoleヘルプの 関連付け に関連付け設定へのリンクがあります。
アクセスしてプロパティを検索から、チェックしたいサイト(Google Search Consoleの設定をしたサイト一覧が表示されるはず)を選択すると、最初のほうに紹介した関連付けのスクリーンショット画像の画面がでてきます。



2022年7月14日 @kimipooh


2022年6月14日火曜日

【GAS】Google Analytics 4 のデータを Googleスプレットシートに集約し、PDFでメール添付する方法

Google Analytics (UA) については、以前やり方について書き出していました。

ここで利用したGoogle スプレットシートに「Google Analytics」アドオン が Google Analytics 4 に非対応のため、別のアドオンを使ったやり方を紹介します。

*下記で紹介する「Google Analytics™ connector by SyncWith」は無料版の場合、35回/月の更新しかサポートされていません。20サイトを毎日1回更新した場合、月に1度しか更新できないことになります。1サイトなら1日1度で問題ないが、それ以上は https://syncwith.com/pricing にあるように Business 以上が必要だということですね。

流れは次の通り
  1. Google Analytics 4 からデータを取得し、Googleスプレットシートに挿入
  2. Googleスプレットシートにまとめページ「TOTAL Summary」シートを作成
  3. Googleスプレットシートに送信先「Send-Emails」シートを作成
  4. Google Apps Script で「TOTAL Summary」シートを、メール本文(HTML)とPDF添付で「Send-Emails」に入力したメールアドレス宛に送信
「3」「4」は Google Analytics (UA) 用のものを流用するので、ここでの説明は割愛します。

STEP 1. Google Analytics 4 からデータを取得し、Googleスプレットシートに挿入

Googleスプレットシートにアドオン「Google Analytics™ connector by SyncWith」をインストールします。


こちらは、従来の Google Analytics 3(UA)に対応しています。

詳しくは、下記のブログ先が参考になると思います。
  1. 拡張機能 > Google Analytics™ connector by SyncWith > Manage connections を開く
  2. Google Analytics 4 を選択
  3. Connect an account ボタンをクリックして、 Google Analytics 4 の管理をしているGoogleアカウントでログインします。
    *もし複数アカウントの Google Analytics 4 からデータを取得したいなら、あとでアカウントを追加できます。
  4. 次の設定あたりで十分でしょう。また下記の設定をしているものとして先に進みます。
    - タイトル:Googleスプレットシートの「シート名」になるので短い名前がよいです
    - Select a login: Googleアカウントを選択
    - Select a Google Analytics account: Google Analytics 4で設定したアカウント
    - Loading properties: Google Analytics 4 のプロパティ
    - 日時:下記は、Between を選択し、2022年度を指定しています。
    - Dimensions: Country のみ(今回は国別アクセス数が必要なため)
    - Metrics: Active users, New users, Views
         New users: 新規訪問者数
       Views: アクセス数
    - Scheduling: Automatically refresh daily (1日に1度更新)
  5. 入力し終わったら Insert ボタンを押すことで、「タイトル」シートが生成され、下図のような国別アクセス数が記録されます。
もし複数ページあるなら、
拡張機能 > Google Analytics™ connector by SyncWith > Manage connections
を開いて「Browse」ボタンを押すことで、サイトを追加していくことができます。

STEP 2. Googleスプレットシートにまとめページ「TOTAL Summary」シートを作成

Total Summary シートを作成します。

シートの2行目まではメモとなります。ただしメールで送付されることになるので、ログの取得期間などの情報をいれておくと便利かと思います。


上記で重要なのは、次の4つです。

Sheet Name: Google Analytics™ connector by SyncWithで設定したタイトル(シート名)

Access Log: 関数「=SUM(INDIRECT(B5 & "!D:D"))」を入れる
*Sheet Name!D:D(Viewsの欄)の合計値となります。

Visitors: 関数「=SUM(INDIRECT(B5 & "!C:C"))」を入れる
*Sheet Name!C:C(Viewsの欄)の合計値となります。

Countries: 関数「=COUNTIF(INDIRECT(B5 & "!A:A"), ">=A")」をいれる
*Sheet Name!A:A(Countryの欄)が空欄でない場合
*COUNTA や COUNTIFの "<>" 条件の場合、空欄にみえてデータが入っているのかうまくいきません。そのため、C言語でよくやる文字の数値での比較「C言語における文字(文字変数char)・文字列の表現(ASCIIコード表つき)」が使えるんじゃないかーと思ってやってみたら上手く言った程度です。ここは改良の余地ありですね。

TOP 10 of Countries: 関数「=INDIRECT(B5 & "!A3:A13")」を入れる
実際には11ヵ国にしてます。Japan がトップになることも多くて、日本以外の TOP 10が知りたいなと思ったためです。このあたりは、A3:A13をA3:A12に変えたりいろいろ調整してください。

ここまで出来たら下記の、
(後半)一括取得した Googleスプレットシートの特定シートデータをメール本文(HTML)と PDF にして添付したメール送信
を参考にしてください。

Googleドライブの共有アイテムで削除できない共有ファイルがある場合の対処方法

下図のように、共有アイテムのファイルを右クリックして「削除」がグレーアウトしている場合があります。その場合の対処方法についてです。

こちらについては、 Google Workspace 提供の 共有フォルダが関連するため、Google Workspace サポートに問い合わせた結果、回答を得ましたので共有します。

重要:削除権限を有している場合、データ元が削除されてしまう

今回の問題は、Google Workspace の「共有フォルダ」においているファイルを、閲覧専用権限で共有した場合、編集権限を持たないユーザーがアクセスすることで、「削除」権限がないためグレーアウトになるということです。

下図のように共有アイテム内にある、共有フォルダデータは、赤丸のアイコンになります。それ以外は人形のアイコンです。


裏を返せば、「共有アイテム」にあるデータのうち「共有フォルダ」にいれたファイルやフォルダについて編集権限(削除権限)がある場合、共有アイテムから削除すると「共有フォルダ」にいれたオリジナルのデータも消えるということです。ですので必ず削除権限のない「グレーアウト」したファイルのみを削除してください。

== Google Workspace サポートからの回答の一部抜粋 ==

共有アイテムから削除権限のない共有フォルダ内データを削除する方法

  1. 共有アイテムを開く
  2. 共有ドライブから共有されているアイテムを右クリックし、”ゴミ箱に移動” がグレーアウトしていることを確認する *(1)
  3. 対象のアイテムをゴミ箱に、ドラッグ・アンド・ドロップで移動する
  4. メッセージを確認し操作を承認する

*(1) "ゴミ箱に移動" がグレーアウトしている = そのアイテムを実際に削除する権限を所持していない状況となります。実アイテムを削除できないため、共有アイテム内でゴミ箱に移動を行っても、共有ドライブ泡のアイテムが削除されることはございません。

なお、共有ドライブ内のアイテムを削除する権限を保つ場合 (ゴミ箱に移動や削除のオプションを選択できる場合)、本操作に操作によって共有ドライブ側のアイテムが削除されますこと、予めご留意ください。

※ 通常では自身がメンバーとなっている共有ドライブ内のアイテムは、共有アイテム上に表示されないものの、ファイル単位でデータを共有された後に、共有ドライブのメンバーとなった場合、自身が削除できるアイテムが、共有アイテム上に表示される恐れがございます。

=== ここまで ===

共有アイテムは、あくまで共有しているだけのため、整理不要という考え方もあります。ただし整理しすぎると、データを消してしまう恐れがあるので注意が必要です。

2022年6月14日 @kimipooh