しーとちゃん しーとちゃん

けんじさん、在宅勤務のメンバーが増えてから、Excelファイルをメールで何度もやり取りするのが大変で…

けんじ けんじ

それ、Googleスプレッドシートに切り替えるだけでかなり解消できるよ。

しーとちゃん しーとちゃん

ExcelとGoogleスプレッドシートって、結局何が違うんですか?

けんじ けんじ

一番の違いはリアルタイムの共同編集だね。今日はその使い方と、Excelとの連携方法を説明するよ。

これまでExcel関数やピボットテーブルを紹介してきましたが、リモートワークが当たり前になった今、Googleスプレッドシートとの使い分けも重要なスキルになっています。

自分の職場でも、社内の共同作業はGoogleスプレッドシート、社外への正式な提出資料はExcelというように使い分けています。この記事では、両者の違いと、実務でよく使う連携・共同編集の基本、そして事故を防ぐための設定までまとめました。

オフィスで同僚と一緒に作業をしている様子

ExcelとGoogleスプレッドシートの主な違い

項目 Excel Googleスプレッドシート
動作環境 パソコンにインストールして使用(デスクトップアプリ) Webブラウザ上で動作(インストール不要)
リアルタイム共同編集 デスクトップ版単体では不向き。OneDrive/SharePoint上なら可能 標準で複数人が同時に編集可能
ファイルの保存 自分のパソコンやクラウドストレージに保存 自動的にGoogleドライブに保存される
マクロ VBA(Visual Basic for Applications) Google Apps Script(JavaScriptベース)
オフライン利用 標準で可能 事前設定が必要(オフライン編集の有効化)
扱えるデータ量 1シート約104万行。大量データに強い 1ファイル1,000万セルまで
共有のしかた ファイルを送る/クラウドのリンクを共有 URLを共有するだけ

一番大きな違いは、やはりリアルタイムの共同編集のしやすさです。「Excelは共同編集できない」と説明されることがありますが、正確ではありません。Microsoft 365でOneDriveやSharePointにファイルを置いていれば、Excelでも自動保存・同時編集・バージョン履歴が使えます。ただ、URLを渡すだけで始められる手軽さと動作の軽さでは、スプレッドシートに分があるというのが実感です。

逆に、数万行を超えるデータの集計や、VBAで組んだ既存の処理を回す場面ではExcelのほうが安定します。スプレッドシートは1ファイルあたり1,000万セル(列は最大18,278列)が上限で、行数はこのセル数の範囲内で決まります。列を減らせばその分行数を確保できますが、データが増えると動作が重くなるため、実務では数万行を超えたあたりから別の手段を考えたほうが快適です。

Googleスプレッドシートでの共同編集の基本

共有と権限設定

画面右上の「共有」ボタンから、編集してほしい相手のメールアドレスを入力して共有します。このとき、以下の3つの権限を選べます。

権限 できること
閲覧者 内容を見るだけ、編集はできない
閲覧者(コメント可) 内容の閲覧とコメントの追加ができる
編集者 内容の編集・書式変更・共有設定の変更もできる

自分は、社内の担当者には「編集者」、確認だけしてほしい上司には「閲覧者(コメント可)」というように、相手の役割に応じて権限を使い分けています。全員に編集者権限を渡してしまうと、意図しない変更が入ってしまうリスクがあるため注意が必要です。

リンク共有は範囲をよく確認する

共有ダイアログの下側にある「一般的なアクセス」で「リンクを知っている全員」を選ぶと、URLさえ手に入れば誰でも開けるようになります。社外の人に一時的に見せたいときは便利ですが、URLが転送されればそのまま第三者にも届きます。個人情報や取引情報を含むシートでは、面倒でも個別のメールアドレス指定にしてください。

自分の職場では、以下を運用ルールにしています。

  • 社内向けは「組織内の全員」または個別指定
  • 社外共有は原則「閲覧者」で、必要な期間だけ
  • 共有した相手は月に一度見直し、退任・異動した人を外す

歯車アイコンの詳細設定では「閲覧者と閲覧者(コメント可)にダウンロード・印刷・コピーを許可する」のチェックを外せます。社外に見せるだけの資料はオフにしておくと安心です。個別に共有した相手には有効期限を設定することもできるので、期間限定の共有はこの機能を使うと外し忘れが防げます。

オンライン会議でミーティングをしている様子

リアルタイム編集とコメント機能

複数人が同時にシートを開くと、それぞれの編集者がどこを操作しているかがカーソルの色で表示され、リアルタイムに変更が反映されます。特定のセルに対してコメントを残したい場合は、セルを右クリックして「コメント」を選択します。コメント内で「@」に続けて相手のメールアドレスを入力すると、その人に通知が届く仕組みになっています。

自分は、数字の根拠を確認したいときや修正依頼をする際に、このコメント機能をよく使います。チャットツールで別途連絡するより、該当のセルに直接コメントを残す方が、後から見返したときに文脈がわかりやすいというメリットがあります。

対応が終わったコメントは「解決」を押すと非表示になりますが、履歴としては残るので、後から経緯をたどることもできます。似た機能に「メモ」がありますが、こちらは通知も返信もできない補足書き用です。やり取りが発生するものはコメント、単なる注記はメモ、と使い分けると混乱しません。

変更履歴の確認

「ファイル」メニューから「変更履歴」を開くと、いつ・誰が・どこを変更したかを時系列で確認できます。誤って重要なデータを消してしまった場合も、この機能から特定の時点の状態に復元できるため、共同編集での事故対策として非常に心強い機能です。

履歴が増えると目的の時点を探しにくくなるので、区切りのタイミングで「この版に名前を付ける」を使っておくと便利です。「4月度提出版」のように名前を付けておけば、後から一発で戻せます。また、特定のセルだけを右クリックして「編集履歴を表示」を選ぶと、そのセルが誰にいつ書き換えられたかをピンポイントで確認できます。「この数字、いつの間に変わった?」を追いかけるときに重宝します。

書類を見ながら同僚と作業している様子

壊されないシートを作る3つの設定

共同編集で一番多いトラブルは、悪意のない上書きです。誰かが数式の入ったセルに直接値を打ち込んでしまい、その列だけ集計が狂う、というのは何度も見てきました。次の3つを設定しておくと、かなり防げます。

1. 範囲やシートを保護する

「データ」→「シートと範囲を保護」で、編集できる人を限定できます。集計行や数式の列だけを保護し、入力欄は開けておくのが基本の形です。完全に禁止するのではなく「編集時に警告を表示する」という緩い設定も選べるので、社内の少人数運用ならこちらでも十分機能します。

2. 入力規則でプルダウンにする

「データ」→「データの入力規則」で、選択肢を決めておけます。部署名や区分を手入力させると、「営業部」「営業1部」「営業部 」のような表記ゆれが必ず発生し、後の集計で泣きます。選ばせる形にするだけで、VLOOKUPやXLOOKUPが一致しない事故がぐっと減ります。

3. フィルタ表示を使う

普通のフィルタをかけると、同時に開いている全員の画面で並び替えや絞り込みが反映されてしまいます。「データ」→「フィルタ表示」→「新しいフィルタ表示を作成」を使えば、自分の画面だけで絞り込みができ、他の人の作業を邪魔しません。共有シートで作業するときは、こちらを使う習慣をつけておくと安心です。

ExcelファイルとGoogleスプレッドシートの相互変換

ExcelファイルをGoogleスプレッドシートで開く

Googleドライブに .xlsx 形式のExcelファイルをアップロードし、ファイルをダブルクリックして開くと、そのままGoogleスプレッドシートの形式に変換されます。「ファイル」→「Googleスプレッドシートとして保存」を選べば、正式に変換した別ファイルとして保存されます。

ここで知っておきたいのが、xlsxのまま編集するモードと、スプレッドシート形式に変換するモードは別物だということです。xlsxのまま開いた場合はファイル名の横に「.XLSX」と表示され、Excel形式を保ったまま編集できますが、スプレッドシート独自の関数など一部の機能が使えません。継続的に共同編集するなら、最初にスプレッドシート形式へ変換してしまうほうがトラブルは少ないです。

Googleスプレッドシートをexcel形式で保存する

逆に、Googleスプレッドシートで作成したファイルをExcel形式で使いたい場合は、「ファイル」→「ダウンロード」→「Microsoft Excel(.xlsx)」を選択します。社外に提出する資料など、相手がExcelを前提にしている場合はこの方法で書き出すのが確実です。

変換時の注意点

ExcelとGoogleスプレッドシートは関数の多くが共通していますが、一部の関数や機能は完全には互換していません。特にVBAで組んだマクロは、Googleスプレッドシートにそのまま持ち込むことはできず、Google Apps Scriptで書き直す必要があります。複雑なマクロを含むExcelファイルを変換する際は、変換後に必ず動作を確認するようにしてください。

自分の経験上、変換で崩れやすいのは次のあたりです。書き出したら、この順に確認しています。

確認する箇所 起きやすいこと
マクロ・VBA まったく引き継がれない
条件付き書式 ルールが一部消える、色が変わる
ピボットテーブル レイアウトや集計方法がずれる
独自関数(IMPORTRANGE、QUERY等) Excel側でエラーになる
グラフ 種類や書式が簡略化される
印刷設定・改ページ ほぼ引き継がれない
日付の表示形式 表示がずれる、文字列化する

「渡す直前に一度だけ変換して、目視で数か所を突き合わせる」というのを習慣にしておくと、提出後に慌てずに済みます。

クラウドに接続されたノートパソコンとキーボード

複数のスプレッドシートを連携させる:IMPORTRANGE関数

Googleスプレッドシート独自の便利な関数として、IMPORTRANGE関数があります。これは、別のスプレッドシートのデータを、現在開いているシートに取り込む関数です。

=IMPORTRANGE("スプレッドシートのURL", "シート名!範囲")

たとえば、部署ごとに分かれた実績シートを、集計用の1つのシートにまとめたいときに便利です。初回利用時のみ、アクセス許可を求めるダイアログが表示されるので、許可を承認すれば以降は自動的にデータが同期されます。

使ううえで気をつけたい点もいくつかあります。

  • 参照先の閲覧権限が必要:自分が参照元のシートを見られないと、いくら許可しても取り込めません
  • 範囲は必要な分だけ:A:Z のように広く取ると読み込みが重くなります。使う列だけに絞ってください
  • 参照先の構造変更に弱い:相手のシートで列が挿入されると、取り込む位置がずれます。列名を含めて取り込み、こちら側で並べ替えるほうが安全です
  • 数が増えると重くなる:同じファイルにIMPORTRANGEを何本も置くと、開くたびに全部読み直して待たされます

そのほか覚えておくと便利な独自関数

関数 できること
QUERY 表から条件に合う行・列だけを抜き出す。SQLに近い書き方
ARRAYFORMULA 1つの数式を列全体にまとめて適用する
UNIQUE 重複を除いた一覧を作る
SPLIT 区切り文字で1つのセルを複数列に分ける
IMPORTHTML Web上の表を取り込む

特に ARRAYFORMULA は共同編集と相性が良く、1行目に1本書いておけば、下の行に誰かがデータを追加しても自動で計算されます。「数式をコピーし忘れて集計から漏れる」という事故が起きなくなるので、共有シートでは積極的に使っています。

オフラインで使いたいとき

出張中や機内で作業する予定があるなら、事前にオフライン編集を有効にしておきます。ChromeにGoogleドキュメントのオフライン拡張機能を入れ、ドライブの設定で「オフライン」をオンにするか、対象ファイルの詳細メニューから「オフラインで使用可能にする」を選びます。設定は必ずネットにつながっているうちに済ませてください。移動してから気づいても手遅れです。

結局どちらを使うか

状況 向いているほう
複数人で同時に入力する管理表 スプレッドシート
URLを送るだけで見せたい スプレッドシート
数万行を超える大きなデータの集計 Excel
既存のVBAマクロを使い続ける Excel
社外への正式な提出資料 Excel(スプレッドシートで作ってxlsxで書き出す手もあり)
誰がいつ変更したか追いたい どちらも可(履歴機能あり)
外出先やスマホから見る スプレッドシート

迷ったときの自分の基準は、「入力する人が2人以上いるか」です。1人で作って配るだけならExcel、複数人が触るならスプレッドシート。この切り分けにしてから、ファイルのバージョン違いで揉めることがほぼなくなりました。

まとめ

Googleスプレッドシートは、リアルタイムの共同編集やコメント機能、変更履歴など、複数人での作業に強みを持っています。一方、Excelは高度な集計・マクロ機能やオフライン作業に安定感があります。それぞれの強みを理解したうえで、社内の共同作業と社外への提出資料で使い分けてみてください。

共有を始めるときは、権限とリンク共有の範囲を確認し、数式の入った列は保護、入力欄は入力規則でプルダウンに。この3点だけ最初に設定しておけば、共同編集で起きるトラブルの大半は防げます。

しーとちゃん しーとちゃん

コメント機能と変更履歴、めちゃくちゃ便利そうです!今度のプロジェクトからGoogleスプレッドシートに切り替えてみます。

けんじ けんじ

権限設定と、数式列の保護だけ先にやっておくと安心だよ。あと、絞り込みは「フィルタ表示」を使えば他の人の画面を崩さないから覚えておいてね。