サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
GPT-4o
officeforest.org
数あるガジェットの中でも、コスパに優れていて実用的なガジェットというものは意外と少ないです。そんなガジェットのジャンルの中でこの要件を満たすものが「セットトップボックス」と呼ばれるもの。これまでも、Chromecastのクローンのような「Ezcast」や「AppleTV」を買ったことがあります。 ただこれらは使い勝手が微妙だったり、拡張性の面でちょっと・・・しかし、FireTV StickはベースがAndroidという事だけあって、拡張性でも小型なので携帯性にも優れていて仕事でも使えそうです。ということで、使い倒してみました。 ※Fire TV Stickは最近不穏な噂や制限だらけになってきたので、ChromecastやNebula 4Kに自分はお引越ししました。 Chromecastを購入して色々検証してみた Anker Nebula 4K Streaming DongleはFire T
自分自身の個人的意見としては、エンドユーザコンピューティングは大いに結構だと思ってるけれど、一方で日本でジリジリと熱さが消えつつある国内の有象無象のRPAについては滅んだほうが良いとも思ってる。理由は後述するとして、本日良いニュースが発表されました。Power Automate Desktopについて追加費用無し無償で利用可能になるとのこと。これは既にあるMicrosoft365のEnterpriseプランなどに標準で利用できてるPower Automateのデスクトップ版のようで、Windows10に標準でついてくるようになるとのこと。 ということで、現時点のMicrosoft365で使えてるPower Automate Desktopを使ってみて、どんな感じなのか?またリリース後にその違いなどをここに記述していこうかなと思っています。また、Seleniumベースのウェブ自動化についても
未だにアップデータが配信される度に問題を引き起こしてる「Windows10」。自宅のハイエンドPCやVMware Fusionでは殆どこの手のトラブルに遭遇しないのですが、会社などで配給されてるショボい事務用PC(自宅のものよりも新しいにも関わらず)では、WSUSから配信される度に問い合わせがある。。酷いのになるとWSUSから配信中にネットワークトラフィックがいっぱいになって、他の人からネットが繋がらないなんて問い合わせまで来る(自分、ヘルプデスクじゃないんですが)。 正直なところ、もうWindowsを辞めるだけでヘルプデスクの負荷やエンドユーザの負荷は一気に消滅すると言われているくらいに問題なのですが、その都度検索して探すのにも疲れ果てたので、過去のサイトから現在でも遭遇するであろうものをサルベージして再度まとめることにしました。あまり最新のアップデートをここ1年追いかけていないので、無
以前、Chrome83の際には、アップデート後に、Google Apps Scriptでのボタンクリック時にPDFがダウンロードといった事ができなくなり、非常に困った事態になりました。その後、XFrameOptionsModeでの挙動で、Google Apps Scriptの場合にはtarget属性にblankを指定して、対処することが出来ました。 さて、今回、Chrome92では地味ながら、かなり大きな変更があり、Google Apps Scriptでalertやconfirmが利用できなくなりました。Salesforceなどの外部のサービスでも影響が出ているようです。 ※2021/08/03 - 今朝再度、確認したらGoogle Apps Scriptでのalert,confirmの挙動ができるようになっていました。修正されたのか?しかし、今後何があるかわからないので、alert,co
大昔のこと。それまで平和に過ごしてたある日、別のお仕事で東京に異動し、そこで告げられた内容が「1月の残業時間は80時間オーバー。ここに放り込まれて、最初のミッションはこのどうにもならない状況をなんとかしてほしい」でした。 現在は、労基法の制限で月45時間の制限が設けられていますが、当時は毎日がきつい日々でした。アプリを作り、完全マニュアルを整備し、平均残業時間は10時間/人まで減らす事が出来たのは、徹底した業務自動化と最適化でした。 さて、昨今はRPAという新たなツールが出てきていますが、当時はバリバリVBAでコードを書かないと実現出来なかった事が、ノーコードで実現できつつありますが、ここには大きな注意点があります。今回のエントリーはウェブに溢れてる様々な意見や見識をまとめ、誇大広告に踊らされないように見極めるために、整理してみることにしてみました。 まずは、この面白ツイッターを読んでみて
Google Apps Scriptで開発をしていると、だんだん似たようなコードや同じ仕組みを同じプロジェクトに何度も書く事が出てきます。しかし、そのままでは他のプロジェクトで使い回しをしたり、コードを簡潔に書くにはちょっと不都合です。また、1つのスプレッドシートに複数のプロジェクトファイルを追加した場合、プロジェクトプロパティなどはそのプロジェクト内のものしか参照出来ないので、複数のプロジェクトで参照させたい場合、これでは困った事になります。 そこで活用したいのが、ライブラリ機能。なるべくなるべく小さな関数や決まった処理をするルーチンはライブラリにまとめて、足りない部分だけをコードで記述するようにすると、開発がとっても早くなります。但し、公式サイトにも掲載されていますが、ライブラリは使用するとプログラムの実行速度は遅くなりますので、注意が必要です。5分の壁問題が生じる場合には、あえて使わ
macOSは、正直なところ世界シェア1割程度のマイナーなOSではあるので、どうしても絶対的なデスクトップアプリケーションの数は、Windowsのソレと比較して少ないです。UNIX系のアプリケーションも使えますが、その多くはコンソールアプリケーションで、開発やサーバー系、サービス系になってくるので、一般的なアプリケーションは必ずしも満足の行く環境であるとは言えません。 そんな中、ここ数年でLinuxに於けるWindowsアプリケーション実行環境であるWineが怒涛の進化を遂げており(2021年8月現在、Version6.0)、macOSでもその恩恵を受けられます。Windows用のアプリケーションの多くがその環境を利用する事でmacOS上で動かせるわけです。ということで、今回はmacOS用のWineについてちょっとまとめてみたいと思います。 ※CrossOver Macは2021年8月段階で
個人宅でも光回線としてここ最近、10Gbpsクラスの光回線ですら導入出来るようになってきています。以前はBフレッツ100Mbps程度が一般的だったものが、もはやギガクラス。ここまで来ても価格はそれほど変わらないレベル(Nuroだと月3000円程度)。 ポータブルWiFiで頑張ってる人も多いと思うけれど、bps単位で見るともはやポータブルWiFiは割高な上に通信スピードが遅すぎる(ましてや家庭内LANを構築するにはあまりにも非力)と言うことでNuro光を導入する方も多いでしょう。しかしそのまま使うと非常にもったいないので、ここでチューニングのメモを晒しておきます(Nuro光2Gをターゲットにしています) 周辺機器類の設定 有線LAN Nuro光のルーターはF660AというものがONU込のものを使うことになります(他のものが来ることもあるようだけれど)。これ単体で無線WiFiルーターでもあるの
macOSで仮想化といえば、VMware FusionやParallels、変わり者としてはWineなどが使われてきています。しかし、これらはVirtualizationという括りになり、CPUエミュレーション等は行っていませんので、基本x86-x64の環境でなければ使う事が出来ません(VMwareもParallelsもARM対応。Wine/CrossoverはRosetta2経由でx86,x64アプリが動作します) そうなると、他のアーキテクチャで動いてるOSを動かしたいとなると、専用のエミュレータを使うのが定石でした。しかし、Windows11の項目でちょいちょい話題になっていた「UTM」を使うと、様々なCPUをエミュレーションする事が可能で、しかもmacOSだけじゃなくiOSデバイスでも動かせるとか。ということで、今回はUTMを利用して、一通り使い方をまとめてみました。 今回使用する
Google Apps Scriptの中で地味ながら、その活用の幅が実に広いものとして、スクリプトトリガーがあります。いわゆる時限式で作動させるための仕組みなのですが、スクリプトトリガーは、スクリプトエディタの画面から入り、手動で登録するのが通常のフローです。しかし、「スクリプト内でテンポラリで時間トリガーを設置したい」であったり「トリガーの設置し直し」など、スクリプトエディタにいちいち入らず設定したいシーンがボチボチあります。そういった場合には、スクリプトからトリガーの設置や削除が出来ると便利です。二重に登録してしまったりすると、二回発動したり、片方しか発動しなかったりするので、慎重に設置をしましょう。 これらトリガーは大きく分けて4種類あり、1.時限作動式 2.開いた時 3.編集時 4.フォーム送信時を設置することが可能です。主に使うのは時限作動式と、フォーム送信時の2つになります。但
Google Apps Scriptは使ってるとわかりますが、非常に動作が遅いです。おまけにローカルPC内で動作するVBAのようにプログラムのコードを組むと、大きなバッチ処理をさせているようなケースでは、間違いなくタイムアウトするでしょう。「起動時間の最大値を超えました」といったエラーが出るはずです。これは6分というタイムアウトが設定されているため、途中で処理が止まってしまい、スクリプトが継続できないわけです。メソッドの無駄遣いを減らし、効率よくバッチ処理を出来るようにコーディングをしても、限界があります。 まずは高速化するためのテクニックを身に着け、それでも足りない場合にこのテクニックを使いましょう。 そうなると、大きな処理は2回3回に分けて人間が実行しないといけないのか?というと、2回分程度ならそれでも良いのですが、実際の処理がどれくらい掛かるのかがわからないケースや、サーバ側の問題で
大分前に新アプリとしてリニューアルされた「新しいGoogle Sites」ですが、昨年12月頃にようやく「Google Apps ScriptによるAppガジェット」や「独自ドメイン」にも対応して、旧Google Sitesから十分移行することが出来るようになりました。新しいGoogle Sitesですが作り方が旧サイトよりもちょっと癖があって、とっつきにくい面があります。 今回は新しいGoogle Sitesの作り方について学んで行きたいと思います。 ※メールフォームより、独自ドメイン設定について表示がsites.google.com/view/サイト名になっている場合にviewの部分をドメインに変更する件を頂きましたが、返信後メアド不明でしたので、本件を「ウェブアドレスをマッピングする」の項目に追記しました。 ※メールフォームよりお便り頂きました。Google SitesがGoogle
Google Apps Scriptは大変便利なスクリプトなのですが、連続稼働時間に最大6分という制限があり、それを超えると「起動時間の最大値を超えました」とのメッセージが出てスクリプトは勝手に止まってしまいます(G Suite Businessだと30分)。これを回避するテクニックとしてはスクリプトトリガーを利用した突破方法があるのですが、実装は結構大変ですし、何より早く終わるに越したことはありません。しかし、スクリプトを高速化する為にはGoogle Apps Script流の書き方というものがあるので、今回それをまとめてみました。 なるべく普段から意識して書くようにすると、機能追加時に痛い目をみずに済みます(実際、単純なシートデータを集めるスクリプトで、集めるシートが増えてあっという間にスクリプトが破綻して困った思い出があります)。今回使用するスプレッドシートのダミーデータはMocka
次期、macOS Bigsurより先のMacは、CPUについていよいよIntelに愛想尽かしてARM(Apple Silicon)に変更するということで、PowerPC以来の大規模な民族大移動が生じるわけなのですが、そうなると気になるのが仮想環境。すでにParallerlsはARM版を作ってるようで、VMwareもどうでるか楽しみです。 それに伴う朗報か、VMware Fusionが個人利用に限り無償化されました。macOSユーザは全員今すぐVMware Fusionを利用して仮想環境を構築することが可能です。今回は、無償化されたVMware Fusion 12を利用してみたいと思います。今回は、Macbook Pro 2016 + Catalinaでテストしています。 VMware Fusion 12 Playerについて 概要 これまでVMware Fusion 3.x〜11.5まで長
2020年2月6日、ついにGoogle Apps ScriptのJavaScript基盤でV8エンジンが利用可能になりました。これまでのGASの実行基盤はES2015ベースとは言え、一部が使えていただけで、最新のJavaScript環境で利用可能になっている構文は使えない状態にあったので、これでGASの書き方が一気に変わってくるかもしれない。 これまではMozillaのRhinoというエンジンで動いていたようで。現在はまだ選択式なので、V8にするためには設定が必要だけれど、いずれは現在のエンジンは廃止される見通しなので、今のうちにV8での書き方に慣れておく必要はあるかもしれない。今回はこのV8でどういう構文が使えるようになったのか?一個ずつ検証すると共に、GASの実行スピードも検証してみたい。 ※注意が必要なのが、GASはデフォルトでV8がONになってしまってます。。。新規作成時に要注意で
家庭内で動画や音楽を配信し、家族でいつでもどこでも、手持ちのスマフォなどで楽しむ。其のための技術がDLNAサーバ。パソコンやiPhoneだけでなく、Playstationや対応TVで直接受信ができるなど、汎用的で便利な技術です。 配信する為にはサーバが必要ですし、スマフォなどの場合受信用のアプリが必要ですが、これらはすべて簡単に実現可能です。今回はmacOSをベースに紹介しますが、使用するサーバーアプリケーションはWindows, macOS, Linuxとマルチプラットフォームで動作します。適宜読み替えて立ててみましょう。 使用するソフトウェア DLNAサーバソフトウェア BubbleUPnP for DLNA - Google Play infuse5 - App Store DLNAサーバを立てる Universal Media Server Windows用やLinux用にもリリー
Google Apps Scriptは便利な事に外部のサイトへアクセスして情報をサーバサイドで取得させる事が可能です。但し、イントラネット内の情報はアクセスできません(かつてはそういうオプションもありましたが)。取得した情報を元にさらに、Drive内にファイルを生成したり、またGoogle Apps Script Execution APIと併用して、代理でクライアントに返すなど、様々な使い方ができます。 その際に使用するのがUrlFetchAppクラスですが、G Suite内ではPDFの作成、外部Web APIへアクセス、スクレイピング、外部の関数を叩いて発火させる、トリガーで自動収集等など。但し、使いみちが広いですが1日あたりの利用上限がありますので、あまり短い間隔で作動させないように注意が必要です。 UrlFetchAppのリファレンス UrlFetchAppはurlを入れるだけでも
sudo /Applications/Install\ macOS\ High\ Sierra.app/Contents/Resources/createinstallmedia --volume /Volumes/MyVolume 完了したらディスクを抜いて置きます。 TimeMachineでバックアップ 新しいSSDに現在の環境をそっくり復元するために、外付けHDDにでもTimemachineでバックアップを取っておきましょう。OSインストール時に復元することで、いろいろな設定、アプリ、ファイル類が完全復元されて手間が省けます。 外付けHDDを接続しておく。 システム環境設定からTimemachineを開く ディスクを選択で1.のディスクを選ぶ。 メニューバーにあるTimemachineのアイコンをクリックして、バックアップをいますぐ作る 作成が完了したら1.のディスクを取り外す。 図
Google Apps Scriptそのものには、印刷に関するメソッドがありません。しかし、ファイルのエクスポートではPDF形式がサポートされています。これは、URLを組み立てて投げることで、プログラム側からも利用出来るようになっています。 PDF化は何かと利用価値はありますが、これが実装できると、自動的にPDF化してメールに添付して送る、ドライブの所定の場所に自動的に格納するなどが可能になります。また、スプレッドシート固有の機能ではないので、他のドキュメントも利用することが出来ますよ。 ※旧方式のPDF出力では、現在のような詳細な出力指定は出来ません。新方式のPDF出力では詳細な出力が可能であり、またカスタム改ページや、指定したシートのみPDF化なども可能になっています。 使用するメソッド・クラス、準備するもの 今回使用するスプレッドシート UrlfetchAppクラスの各種メソッド D
現在開発中のアプリでちょっと必要になったので作ってる「グループアドレスからメンバー一覧取得」と「カレンダーのリソースを取得」の2本。小ネタをひとまとめにして、エントリーを作成しています。これらは都度都 …
実行結果サンプル 今回は、スプレッドシート上のダイアログではなく、フォームとして表示しています。これをウェブアプリケーションとして作ったフォームなどで使用すると効果バツグンです。 ※入力補完のほうは、「新宿」と入れると補完データが出てきます。プルダウンはそのままクリックして選ぶだけです。また、例えばコードと商品名の2列で商品名を選ぶとコードが入るといったようなトリッキーな作り方も可能です。 図:サンプルです。実際に動作します。 ソースコードと解説 GAS側コード //このスプレッドシートのID var sheet = "ここにスプレッドシートのIDを入力"; //HTMLで作ったフォームを表示する function doGet(){ var output = HtmlService.createHtmlOutputFromFile("index") .setSandboxMode(Html
Google Apps Scriptには、ウェブアプリケーションを公開したりするために「doGet」「doPost」という特別な関数があります。パラメータを加えて渡して上げることで、スプレッドシートのデータなどをJSONで受け取ったり、ウェブページを生成して、ウェブアプリケーションを表示したりなど、非常に重要な機能の1つです。この仕組を使うことで、自作のREST APIを作ることも可能です。 今回は、この「doPost」「doGet」を利用して、実行をするとスプレッドシートに書き込まれるといったものを作ってみたいと思います。 今回使用するスプレッドシートや資料 doPost関数 doGet関数 今回使用するスプレッドシート ContentServiceクラスの各種メソッド 概要 doGetは、URLに繋げてパラメータを与えて送ります。HTTP通信のGETなわけですが、こちらのほうが利用する
M1 MacというARMなmacOSになってから、一番大きく変わったのが、Bootcampの廃止とVMware Fusionが使えなくなった事。その中でいち早く、macOS向け仮想環境として出てきたのがParallels。VMware Fusion派だった自分ですが、さすがにもう今のVMwareではTech Previewのまま消えるのではないかと不安視。 ということで、Parallels Desktopをテストしてみることにしました(使用するOSはWindows11を利用します)。既に先に運用してるUTM 3.0と比較もしてみたいと思います。 図:M1 MacでもWindows11は利用できます 今回利用するソフトウェア 概要 Parallels Desktop 17 比較対象としてるUTM 3.0の記事は以下の内容になります。製品としてのParallelsとオープンソースのUTMでは色
Google Apps Scriptにてウェブアプリを作る場合、通常doGet()でHTMLを表示し、HTML側からスプレッドシートのデータをリクエストした時に、スプレッドシートデータを普通は二次元配列形式でデータを受け取ります。その後、配列を例えば ss[2][3]といった具合に配列の場所を指定して、データを処理します。 しかし、この手法だと行を指定する部分は数字でも良いのですが、列を指定する部分まで何列目として指定しなければならず、少々面倒です。列指定はタイトルの文字で指定できたら楽ですよね。そこで、スプレッドシートのデータをJSON形式でHTML側へ送ってあげて、JSONデータとして扱えば、HTML側の処理が少し楽になります。 今回はこれに加えて、スプレッドシートのデータをJSON形式として、Web APIとして配信もしてみたいと思います。 今回使用するスプレッドシート スプレッドシ
これまでブログにて、Google Apps Scriptを用いた様々なアプリケーションやテクニックを紹介してきましたが、その多くはある程度Google Apps Scriptが出来る前提でのものでした。その為、入門者向けの内容ではなく、コードの説明も主にポイントになる点と、コード内のコメントでどのようなものを書いてるのかを読み取るものになっています。その中でGoogle Apps Scriptでウェブアプリケーションを作る方法をまとめて欲しいという話があったので、現時点で最新の作り方をまとめてみました。 概要 Google Apps Scriptにはウェブアプリケーションを作り表示する為のサービスとして2種類のタイプのクラスが用意されています。どちらもウェブアプリケーションとして出力した結果は同じなのですが、その動作原理が異なるので、利用目的などに応じて使い分けると良いでしょう。また、ウェ
Googleスプレッドシートを使用していてぶつかる厄介な問題がCSVファイルの取り扱いに関する問題。主に、GoogleスプレッドシートからエクスポートしたCSVファイルをExcelで読み込めない問題や、逆に大量のCSVファイルをインポートを読み込みたい(しかもローカルPCから)となると、非常に融通の効かないアプリケーションだなと今でも思います。 これらの問題は、前者はGoogleスプレッドシートからエクスポートされるテキストがUTF-8でエンコードされたもので、取り分け日本やEXCELで普通に扱うShift-JISでエンコードされたCSVファイルではないから起き、後者はそもそも標準機能だと1個ずつしか読み込めないなどの仕様があるからです。後者の複数ファイルを読み込む件に関しては、Google Picker APIを使ったドライブから複数ファイルの読み込みや、HTML5を利用したローカルPC
今回の作業に必要なファイル等 Chrome OS Flex USBメモリ - PC側がUSB3.0対応ならば、3.0対応のUSBメモリを使いましょう 16GB程度のUSBメモリがあれば十分です。Chrome OSの様々な設定等についての詳細は以下のエントリーを参考にしてください。 HP Chromebook 14aを徹底的に活用してみる 実際に使ってみる システム要件 古いPCを再生するといっても、あまりにも古すぎるものはさすがに動かせないようですが、以下の要件に該当するものであれば稼働が可能になっています。自分が色々と調査してみた結果も以下に含めています。 2010年以降発売のPCもしくはMAC 64Bit対応のCPU(IntelとAMDといったx64のCPU) - ARMでは動作しません 4GBのRAM 16GBのストレージ Intel GMA 500、600、3600、3650のGP
2022年2月に、Microsoftより現在リリースされているMicrosoft365(Build 2203)のExcel, Access, Power Point, Visio, WordおよびOffice2021、過去の版である単品版のOffice 2019, Office 2016, Office 2013, Office LTSCに対してもアプデが実行される(Windows版のみ)ことになった「VBA実行をデフォルトでブロック」する機能。既にその前よりv4.0のExcelのVBAのブロックなどが実施済みです。 この結果として、外部からダウンロードしたファイルだけでなく、社内で業務改善として配布してるVBA入りのファイルの実行が阻害されて使えなくなる恐れがあります。この問題点に関しての対策をまとめてみました。 変更される内容の詳細 今回の処置で措置が実施される内容は以下の通り。こちら
機械学習サービスが現在最も熱いテクノロジーですが、Google提供のものは最も手軽に扱える上に、コストも激安なので、簡単に試せるのが良い点ですね。TensorFlowのようなものAutoML Visionといった高度なものから、前回紹介したCloud Speech APIなどなど豊富に用意されていて既に、実用化までされています。 今回は、画像認識用のAPIであるCloud Vision APIおよびGoogle Drive API付属のOCR機能を使って、画像から文字認識してテキストで取り出してみたいと思います。いずれも、Google Apps Script標準のAPIではないので、事前準備が必要です。 今回のサンプルファイルは、以前作成しました「Google Pickerでアップローダを作る」のサンプルファイルをベースにしています。また、似たようなものとして、音声から文字起こしも別のAP
次のページ
このページを最初にブックマークしてみませんか?
『officeforest.org』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く