1.経緯
Aシステムズ様のxoBlos開発業務の際にGoogleスプレッドシートを扱う機会があった。それまでGoogleスプレッドシートとExcelは互換性があると思っていたが、すべての機能に互換性があるわけではないことを知ったため調べてみた。
2.Googleスプレッドシート
Googleが提供するWebブラウザ上で利用できる表計算ツール。Googleアカウントがあれば無料で使用可能。
1つのファイルを複数人で同時編集できる点が特徴である。
Microsoft Excelと互換性があり、Googleドライブにアップロードしてスプレッドシートとして開くことで同時編集が可能になる。
3.数式エラーの発生
xoBlos開発業務にてGoogleスプレッドシートをExcelとしてダウンロードしたところ、一部のセルに数式エラーが発生。

4.DUMMY FUNCTION
セルの値を確認していたところ、Excelでは見慣れない数式が入力されていた。
調べてみたところ、Googleスプレッドシート独自の関数を使用していると、Excel上では「DUMMYFUNCTION」として表示されることが分かった。
今回は「IMPORTRANGE」というGoogleスプレッドシート独自の関数を使用していたため、一部で数式エラーが発生していた。

5.IMPORT RANGE関数
指定したスプレッドシートからセルの範囲を読み込む関数。
IMPORTRANGE(スプレッドシートの URL, 範囲の文字列)
第一引数にデータの読み込み元となるスプレッドシートのURLを指定し、第二引数に読み込む範囲を指定すると、指定した範囲を読み込んでスプレッドシート上に表示させることができる。
6.その他のGoogleスプレッドシート独自の関数
・IMAGE関数
セルに画像を挿入する。サイズも変更可能。

※Microsoft 365のExcelとWeb版のExcelでのみ利用可能。その他のExcelでは代用できず、画像ファイルを直接貼り付ける必要がある。
・GOOGLETRANSLATE関数
セル内のテキストを翻訳する。
GOOGLETRANSLATE(テキスト, [ソース言語, ターゲット言語])
第一引数に翻訳するテキストを指定し、
第二引数にソース言語を指定し(言語を自動的に検出する場合は省略可)、
第三引数にターゲット言語(省略可。デフォルトはシステム言語)を指定すると翻訳結果が表示される。


※Excel関数による代用はできないが、Google翻訳サイトを使用したVBAプログラムをExcelに設定し、そのプログラムを呼び出すことでGOOGLETRANSLATE関数に近い処理を行うことはできる。
参考:Excel関数で自動翻訳!GoogleTranslate関数を実装する方法
7.まとめ・感想
Googleスプレッドシートには独自の関数があり、Excelとは互換性の無いものもあることが分かった。
また、逆にExcelにのみ存在し、Googleスプレッドシートでは互換性の無い関数も存在するため、2つのファイルに変換する際には注意が必要だと感じた。
8.参考サイト
・ExcelにはないがGoogleスプレッドシートにはある便利な関数

・Excel / Google スプレッドシート / Numbersで同じ資料を開いて互換性を検証してみた

コメント