Googleスプレッドシート←→Excelの相互利用ガイド:関数やマクロの互換性に注意せよ:Tech TIPS
ExcelとGoogleスプレッドシートの間では、Excelファイルの相互利用が可能だ。ExcelファイルをGoogleスプレッドシートで開いたり、GoogleスプレッドシートをXLSX形式のファイルとしてダウンロードしたりすることができる。ただ、両者には一部互換性がないため、相互利用には注意すべき点もある。そこで、本Tech TIPSでは、GoogleスプレッドシートとExcelを相互利用する方法と注意点についてまとめてみた。
対象:Googleスプレッドシート(Windows 11)

Googleスプレッドシート←→Excelの相互利用ガイド
ExcelとGoogleスプレッドシートでExcelファイルを相互利用する方法を紹介する。ただ、両者には一部互換性がないため、相互利用には注意すべき点もある。
「Googleスプレッドシート」は、Webブラウザがあれば利用できる便利な表計算ソフトウェアだ。広く使われている「Microsoft Excel(エクセル)」のファイルをインポート/エクスポートして相互利用することも可能だ。
Excelがインストールされていない環境でExcelファイルを確認したいといった場合や、リアルタイムで共有作業をしたいといった場合、Googleスプレッドシートを使うのが便利だ。ただ、両者には一部互換性がないため、相互利用には注意すべき点もある。そこで、本Tech TIPSでは、GoogleスプレッドシートとExcelを相互利用する方法と注意点についてまとめてみた。
ExcelファイルをGoogleスプレッドシートで開く
Excelファイル(XLSX/XLSファイル)をGoogleスプレッドシートで開くには、ExcelファイルをいったんGoogleドライブにアップロードして開く方法もあるが、Googleスプレッドシートでインポートするのが簡単だ。
■操作手順
- WebブラウザでGoogleスプレッドシートを開く
- 既存のシートまたは新規のシートを開く
- [ファイル]メニューの[インポート]を選択する
- [ファイルをインポート]ダイアログが開くので、[アップロード]をクリックする
- [参照]ボタンをクリックして開きたいExcelファイルを選択するか、Excelファイルをドラッグ&ドロップする
- 「インポートの場所」欄のプルダウンリストで[スプレッドシートを置換する][新しいシートを挿入する]などを選択し、[データをインポート]ボタンをクリックする

ExcelファイルをGoogleスプレッドシートで開く(4)
[ファイルをインポート]ダイアログが開くので、[アップロード]タブを開いて、Excelファイルをドラッグ&ドロップする。[参照]ボタンをクリックして、ファイルを選択してもよい。

ExcelファイルをGoogleスプレッドシートで開く(7)
GoogleスプレッドシートにExcelファイルがインポートされる。Excelファイルに複数のシートがある場合も、それぞれスプレッドシートに読み込まれる。
GoogleスプレッドシートをExcelファイルとしてダウンロードする
Googleスプレッドシートで作成した表をExcelファイルとしてダウンロードすることも可能だ。ダウンロードしたExcelファイルは、Excelで開いてデータを確認するとよい。
■操作手順
- Excelに変換したいGoogleスプレッドシートを開く
- [ファイル]メニューの[ダウンロード]をクリックする
- サブメニューで[Microsoft Excel (.xlsx)]を選択する

GoogleスプレッドシートをExcelファイルとしてダウンロードする(3)
ダウンロードしたXLSXファイルをExcelで開いて、Googleスプレッドシートで編集した関数がエラーになっていないかどうかなどを確認する。画面は、Googleスプレッドシートで入力したXLOOKUP関数が配列数式となってしまい、Excelでエラーとなっている。
GoogleスプレッドシートとExcelの互換性に関する注意
ExcelとGoogleスプレッドシートは、仕組みの違いなどからファイルの変換時に一部の要素が崩れたり、エラーが発生したりすることがある。以下、注意すべき互換性についてまとめてみた。
関数の互換性
SUMやIF、VLOOKUPといった基本的な関数は互換性がある。一方、GoogleスプレッドシートやExcelに固有の関数もあり、これらの関数を利用していると正しく動作しなかったり、エラーになったりする。主なものを下表にまとめてみた。
関数名 | 概要 | Excelでの代替手段 |
---|---|---|
IMPORTRANGE | 他のGoogleスプレッドシートのデータをインポート | Power QueryやVBAでの対応が必要 |
ARRAYFORMULA | 複数のセルに対して、1つの数式を一括して適用 | Excelの配列数式やスピル機能を利用 |
QUERY | Google Visualization APIのクエリ言語を使用して、データ範囲を抽出/集計/並べ替え | ExcelのPower Queryやフィルター、ピボットテーブル、DSUMなどのデータベース関数を組み合わせる |
SPLIT | 指定した区切り文字でテキストを分割し、複数のセルに展開 | ExcelのTEXTSPLIT関数か、区切り位置機能を利用 |
UNIQUE | 範囲内の重複しない固有の値のみを抽出 | ExcelのUNIQUE関数、またはCOUNTIFやFREQUENCY関数と組み合わせた配列数式を利用 |
GOOGLEFINANCE | Google Financeからリアルタイムまたは過去の株価情報を取得 | Excelの株価データ型や外部データ接続機能を利用 |
IMAGE | セルに画像のURLを指定して画像を表示する | Excelでは関数で画像を表示する機能はない |
Googleスプレッドシートに固有の関数 |
関数名 | 概要 | Googleスプレッドシートでの代替手段 |
---|---|---|
PHONETIC | セルに入力された文字列のふりがな(読み)を取得 | Google Apps Script(GAS)での対応が必要 |
ASC | 全角の英数字を半角に変換 | JIS関数で半角文字を全角に変換する機能はあるが、その逆はGASでの対応が必要 |
Excelに固有の関数 |
また、複数の文字列やセルの内容を結合(連結)して一つの文字列にするための関数「CONCAT」は仕様が異なっており、Excelでは複数の引数(文字列)が可能だが、Googleスプレッドシートでは引数の数が2つに限定される。

仕様が異なる関数に注意(2)
一方、GoogleスプレッドシートのCONCAT関数では引数が2個に限定され、2つのセルの文字列などを結合するだけしかできない。そのため、Excelでセル範囲を指定して結合するようにした数式は、Googleスプレッドシートではエラーとなってしまう。
マクロ/スクリプトの互換性
Excelのマクロ(VBA)とGoogleスプレッドシートのGoogle Apps Script(GAS)は全くの別物で互換性がない。Excelで自動化のためにマクロを利用している場合、Googleスプレッドシートにインポートしてもマクロは利用できないので注意してほしい。Excelのマクロと同様の機能を実現するには、マクロからGASへの書き換えが必要になる。
また、Excelのマクロ有効ブックをGoogleスプレッドシートで開くと、マクロは無視されてしまうので注意してほしい(マクロを割り当てたボタンなどは表示されない)。
レイアウト/書式の互換性
グラフや図形、チェックボックス、条件付き書式、セルの幅などは、崩れたり、非対応で消えたりすることがある。レイアウトや書式は、インポート/エクスポートした後に再編集が必要になると思った方がよい。
起点となる日付が異なる
ExcelとGoogleスプレッドシートでは、日付の起点(シリアル値の「1」が示す日付)が異なるので、扱う日付によっては注意が必要になる。IT界隈のムダ知識「Excelの“うるう年バグ”は仕様だった? 1900年2月29日の謎」でも取り上げているように、Excelの日付の起点は1900年1月1日である。ただし、本来存在しない1900年2月29日があるため、実際の日数とシリアル値が1日分ずれている上に、1900年2月29日以前の曜日もずれている。
Googleスプレッドシートでは、この点を改善するため日付の起点を1899年12月31日としている。
そのため、1900年1月1日から1900年2月28日までの日付では、Excelと互換性がないので注意してほしい。

起点となる日付が異なる
Excelでは日付のシリアル値の起点は1900年1月1日だが、Googleスプレッドシートでは1899年12月31日となっている。1900年1月1日から1900年2月28日までの曜日などに違いが発生するので、この期間の日付を扱う場合には注意が必要となる。
保護機能が解除される可能性
Excelで設定したシートの保護は、Googleスプレッドシートに移行すると解除される場合がある。Googleスプレッドシートに変換後、再設定する必要がある。
GoogleスプレッドシートとExcelの相互利用のためのベストプラクティス
ExcelとGoogleスプレッドシートはある程度互換性が維持されているものの、上述のように互換性のないところもある。ファイルの相互変換後は、特に関数(エラーがないか)やグラフ、レイアウトを目視で確認して、必要に応じて手動で調整するようにしよう。
凝ったレイアウトやグラフは見栄えはいいものの、毎回、変換後の修正が必要になってしまう。そのため、なるべくシンプルな形式を心掛けるとよい。複雑な関数、凝ったレイアウトやグラフは避け、マクロも使わないようにしよう(逆に凝ったレイアウトやマクロを使った表は相互利用には向かない)。
なるべく基本的な機能のみでファイルを構成すると、互換性の問題が起こりにくくなる。
Copyright© Digital Advantage Corp. All Rights Reserved.