<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Nori | IMEER LAB｜Excel・AI・自動化ブログ</title>
	<atom:link href="https://lab.imeer.jp/author/admin/feed/" rel="self" type="application/rss+xml" />
	<link>https://lab.imeer.jp</link>
	<description>VBA・ChatGPT・WordPress、ときどき猫。</description>
	<lastBuildDate>Tue, 02 Jun 2026 23:38:11 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://lab.imeer.jp/wp-content/uploads/2026/05/cropped-847f523550b64f03abd735470ce0664c-32x32.jpg</url>
	<title>Nori | IMEER LAB｜Excel・AI・自動化ブログ</title>
	<link>https://lab.imeer.jp</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>GitとGitHubとは？初心者向けに「変更履歴管理」を整理してみる</title>
		<link>https://lab.imeer.jp/git-github-version-control-beginner/</link>
					<comments>https://lab.imeer.jp/git-github-version-control-beginner/#respond</comments>
		
		<dc:creator><![CDATA[Nori]]></dc:creator>
		<pubDate>Tue, 02 Jun 2026 23:31:30 +0000</pubDate>
				<category><![CDATA[AI活用]]></category>
		<category><![CDATA[業務改善ログ]]></category>
		<category><![CDATA[AI開発]]></category>
		<category><![CDATA[branch]]></category>
		<category><![CDATA[Git]]></category>
		<category><![CDATA[GitHub]]></category>
		<category><![CDATA[バージョン管理]]></category>
		<category><![CDATA[自動デプロイ]]></category>
		<guid isPermaLink="false">https://lab.imeer.jp/?p=745</guid>

					<description><![CDATA[「Gitって結局何？」「GitHubってGitと何が違うの？」「AI時代に必要って聞くけど、何が便利なの？」 最近はChatGPTやCodexでコードを書く機会が増えた。 その一方で、 みたいなことも普通に起きる。 そこ [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>「Gitって結局何？」<br>「GitHubってGitと何が違うの？」<br>「AI時代に必要って聞くけど、何が便利なの？」</p>



<p>最近はChatGPTやCodexでコードを書く機会が増えた。</p>



<p>その一方で、</p>



<ul class="wp-block-list">
<li>AIが大量にコードを書き換える</li>



<li>動いていたものが急に壊れる</li>



<li>修正したら別の場所が壊れる</li>
</ul>



<p>みたいなことも普通に起きる。</p>



<p>そこで重要になってくるのが Git。</p>



<p>それはわかる。わかるが、いろいろ調べても今一つよくわからない。</p>



<p>ので、自分で記事にすることにした。</p>



<p>この記事では、</p>



<ul class="wp-block-list">
<li>GitとGitHubの違い</li>



<li>新規作成からリリースまでの流れ</li>



<li>branchを使った安全な実験方法</li>



<li>壊れた時の戻し方</li>



<li>自動デプロイ</li>



<li>セキュリティ注意点</li>
</ul>



<p>を初心者向けに整理する。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">Gitがあると助かる場面</h2>



<p>Gitは単なる「バックアップ」ではない。</p>



<p>実際に助かるのはこういう場面。</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
・昨日動いていた状態に戻せる
・AI改修前へ戻せる
・別案を安全に試せる
・PC故障時の保険になる
・公開版だけ管理できる
・どの変更で壊れたか追跡できる
</pre></div>


<p>AI時代は特に、</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>「安全に試行錯誤できること」</p>
</blockquote>



<p>の価値が大きい。</p>



	<div class="loco-comment loco-comment-right loco-comment-hint">
		<div class="loco-comment-image">
			<img decoding="async" src="https://lab.imeer.jp/wp-content/uploads/2026/05/319c037b116b468c3814717913348343-1.png" alt="ロコ" loading="lazy">
		</div>
		<div class="loco-comment-balloon">
			AIにコードを直してもらう時ほど、先にGitでセーブポイントを作っておくと安心です。
		</div>
	</div>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">Gitとは</h2>



<p>Gitは「変更履歴管理システム」。</p>



<p>簡単に言うと、</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>ファイルのセーブポイントを残し続ける仕組み</p>
</blockquote>



<p>に近い。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">Gitがない世界</h2>



<p>Gitなしだとありがちなのがこれ。</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
project_final
project_final2
project_final_last
project_final_last_fix
</pre></div>


<p>途中でどれが正しいか分からなくなる。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">Gitがあるとどうなるか</h2>


<pre class="mermaid lab-mermaid">flowchart TD

A[ファイルを編集する] --&gt; B[Gitで変更を確認]

B --&gt; C{保存する変更か？}
C --&gt;|はい| D[git add]
D --&gt; E[git commit]
E --&gt; F[履歴として保存]

C --&gt;|いいえ| G[変更を破棄]

F --&gt; H[過去へ戻せる]
F --&gt; I[変更差分を確認できる]
F --&gt; J[どこで壊れたか追跡できる]</pre>



<p>Gitは、</p>



<ul class="wp-block-list">
<li>変更履歴</li>



<li>バージョン管理</li>



<li>復旧</li>
</ul>



<p>を助ける。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">GitとGitHubの違い</h2>



<p>ここはかなり混乱しやすい。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">Git</h2>



<p>履歴管理システム本体。</p>



<p>PCだけでも使える。</p>


<pre class="mermaid lab-mermaid">flowchart TD

A[ローカルPC]

A --&gt; B[Git]

B --&gt; C[変更履歴]</pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">GitHub</h2>



<p>Gitデータをクラウド保管するサービス。</p>


<pre class="mermaid lab-mermaid">flowchart TD

A[ローカルPC]

A --&gt; B[Git]

B --&gt; C[GitHub]</pre>



<p>つまり：</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>名前</th><th>役割</th></tr></thead><tbody><tr><td>Git</td><td>履歴管理</td></tr><tr><td>GitHub</td><td>クラウド保存・共有</td></tr></tbody></table></figure>



	<div class="loco-comment loco-comment-right loco-comment-normal">
		<div class="loco-comment-image">
			<img decoding="async" src="https://lab.imeer.jp/wp-content/uploads/2026/05/469c67917f5a98d4c33f9fe5d85798b3-1.png" alt="ロコ" loading="lazy">
		</div>
		<div class="loco-comment-balloon">
			まずはGitだけでも大丈夫。GitHubは、バックアップや共有が必要になってからでも遅くありません。
		</div>
	</div>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">ローカルGitだけでもかなり価値がある</h2>



<p>ここは重要。</p>



<p>初心者は、</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
GitHub必須
</pre></div>


<p>と思いがち。</p>



<p>でも実際には、</p>



<ul class="wp-block-list">
<li>VBA</li>



<li>WordPress</li>



<li>Python</li>



<li>HTML/CSS</li>
</ul>



<p>くらいなら、</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
PC内Gitだけでもかなり助かる
</pre></div>


<p>まずは：</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>壊れても戻せる</p>
</blockquote>



<p>を体験するだけでも価値がある。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">Git操作の流れ</h2>



<p>初心者が混乱しやすいのが：</p>



<ul class="wp-block-list">
<li>add</li>



<li>commit</li>



<li>push</li>
</ul>



<p>の違い。</p>



<p>まずはこの流れで考えると分かりやすい。</p>


<pre class="mermaid lab-mermaid">flowchart LR

A[ファイル編集]

--&gt; B[git add

保存候補へ入れる]
B --&gt; C[git commit
履歴として保存]

C --&gt; D[git push
GitHubへ送る]</pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">新規作成からリリースまでの流れ</h2>



<p>初心者向けにかなり簡略化するとこう。</p>


<pre class="mermaid lab-mermaid">flowchart LR

A[プロジェクト作成] --&gt; B[Git初期化]

B --&gt; C[ファイル編集]

C --&gt; D[commit]

D --&gt; E[GitHubへpush]

E --&gt; F[テスト]

F --&gt; G[リリース]</pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">実際に使うコマンド</h2>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">Git初期化</h3>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
git init
</pre></div>


<p>現在フォルダをGit管理化する。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">状態確認</h3>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
git status
</pre></div>


<p>最重要コマンド。</p>



<p>初心者はまずこれを多用する。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">変更追加</h3>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
git add .
</pre></div>


<p>変更ファイルをcommit対象へ入れる。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">履歴保存</h3>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
git commit -m &quot;初回登録&quot;
</pre></div>


<p>セーブポイント作成。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">GitHubへ送る</h3>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
git push
</pre></div>


<p>GitHubへアップロード。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">GitHubから取得</h3>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
git pull
</pre></div>


<p>GitHub側の最新状態を取得。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">mainとbranchとは</h2>



<p>Gitで重要なのが branch。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">main</h3>



<p>本線。</p>



<p>現在の安定版。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">branch</h3>



<p>実験用コピー。</p>



<p>別世界を作るイメージ。</p>



<p>mainをコピーして、</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>安全な実験空間</p>
</blockquote>



<p>を作る。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">branchのイメージ</h2>


<pre class="mermaid lab-mermaid">flowchart LR
subgraph MAIN[&quot;main（安定版）&quot;]
    M1[v1.0]
    M2[不具合修正]
    M3[v1.1]
end

subgraph BRANCH[&quot;feature-ui&quot;]
    B1[UI変更]
    B2[AI改修]
    B3[色調整]
end

M1 -. branch作成 .-&gt; B1
B1 --&gt; B2
B2 --&gt; B3

B3 -. merge .-&gt; M3</pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">なぜbranchが重要なのか</h2>



<p>AI時代は特に重要。</p>



<p>例えば：</p>



<ul class="wp-block-list">
<li>Codexで大規模改修</li>



<li>CSS全変更</li>



<li>WordPress改造</li>
</ul>



<p>を直接mainでやると危険。</p>



<p>branchなら：</p>



<ul class="wp-block-list">
<li>失敗しても捨てられる</li>



<li>mainは壊れない</li>
</ul>



<p>ので安全。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">branch作成</h3>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
git branch feature-ui
</pre></div>


<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">branch切替</h3>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
git checkout feature-ui
</pre></div>


<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">branch作成＋切替</h3>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
git checkout -b feature-ui
</pre></div>


<p>これをよく使う。</p>



	<div class="loco-comment loco-comment-right loco-comment-hint">
		<div class="loco-comment-image">
			<img decoding="async" src="https://lab.imeer.jp/wp-content/uploads/2026/05/319c037b116b468c3814717913348343-1.png" alt="ロコ" loading="lazy">
		</div>
		<div class="loco-comment-balloon">
			AI改修を頼む前に branch を切る、という癖をつけると事故が減ります。
		</div>
	</div>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">merge（反映）</h3>



<p>問題なければmainへ反映。</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
git checkout main
git merge feature-ui
</pre></div>


<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">Gitを使ったリリースイメージ</h2>



<p>Gitは「開発」だけではなく、</p>



<p>公開まで繋がる。</p>


<pre class="mermaid lab-mermaid">flowchart LR

A[開発]

--&gt; B[テスト]
B --&gt; C[mainへmerge]

C --&gt; D[GitHubへpush]

D --&gt; E[本番公開]</pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">壊れた時の戻し方</h2>



<p>Gitの最大価値。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">変更取り消し</h3>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
git restore .
</pre></div>


<p>commit前の変更を戻す。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">過去commitを見る</h3>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
git log
</pre></div>


<p>履歴一覧を見る。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">過去commitへ移動</h3>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
git checkout コミットID
</pre></div>


<p>昔の状態を見る。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">reset &#8211;hard は強力なので注意</h3>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
git reset --hard コミットID
</pre></div>


<p>完全に戻す。</p>



<p>ただし、</p>



<ul class="wp-block-list">
<li>作業内容が消える</li>



<li>初心者は事故りやすい</li>
</ul>



<p>ので注意。</p>



	<div class="loco-comment loco-comment-right loco-comment-alert">
		<div class="loco-comment-image">
			<img decoding="async" src="https://lab.imeer.jp/wp-content/uploads/2026/05/46726c5a12f0685897e7125fbe7f4c6f-1.png" alt="ロコ" loading="lazy">
		</div>
		<div class="loco-comment-balloon">
			reset --hard は強力です。迷ったら、先に別branchを作るか、作業フォルダをコピーしてから実行した方が安全です。
		</div>
	</div>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">GitHubと自動デプロイ</h2>



<p>最近かなり便利。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">自動デプロイとは</h3>



<p>GitHubへpushすると：</p>



<ul class="wp-block-list">
<li>サーバーへ自動反映</li>



<li>公開サイト更新</li>
</ul>



<p>まで自動化する仕組み。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">イメージ</h3>


<pre class="mermaid lab-mermaid">flowchart LR

A[ローカルPC]

--&gt; B[git push]
B --&gt; C[GitHub]

C --&gt; D[GitHub Actions]

D --&gt; E[サーバーへデプロイ]

E --&gt; F[Webサイト更新]</pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">何が便利か</h3>



<p>例えば：</p>



<ul class="wp-block-list">
<li>WordPressテーマ</li>



<li>HTMLサイト</li>



<li>React</li>



<li>Pythonアプリ</li>
</ul>



<p>など。</p>



<p>毎回FTPアップロードしなくてよくなる。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">FTPは注意</h2>



<p>昔ながらのFTPは危険。</p>



<p>できれば：</p>



<ul class="wp-block-list">
<li>SFTP</li>



<li>SSH</li>
</ul>



<p>推奨。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">セキュリティ注意点</h2>



<p>ここはかなり重要。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">APIキーをcommitしない</h2>



<p>例えば：</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
API_KEY=xxxxx
PASSWORD=abc
</pre></div>


<p>をGit管理すると危険。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">理由</h3>



<p>Gitは履歴が残る。</p>



<p>つまり：</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>一瞬でもcommitすると履歴から掘れる</p>
</blockquote>



<p>削除しても危険。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">実際に起きている事故</h2>



<p>実際には、</p>



<ul class="wp-block-list">
<li>AWSキー流出</li>



<li>OpenAI APIキー流出</li>



<li>WordPressパスワード流出</li>
</ul>



<p>などが起きている。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">.gitignore を使う</h2>



<p>Git管理除外設定。</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
.env
node_modules/
vendor/
config.local.php
</pre></div>


<p>秘密情報を除外する。</p>



	<div class="loco-comment loco-comment-right loco-comment-alert">
		<div class="loco-comment-image">
			<img decoding="async" src="https://lab.imeer.jp/wp-content/uploads/2026/05/46726c5a12f0685897e7125fbe7f4c6f-1.png" alt="ロコ" loading="lazy">
		</div>
		<div class="loco-comment-balloon">
			APIキーやパスワードを一度commitすると、削除しても履歴に残ります。公開リポジトリでは特に注意です。
		</div>
	</div>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">初心者向けおすすめ運用</h2>



<p>最初はこれで十分。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">Step1</h3>



<p>ローカルGit。</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
PC
 └ Git
</pre></div>


<p>まずは「戻せる」ことを覚える。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">Step2</h3>



<p>GitHub Private。</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
PC
 ↓
GitHub Private
</pre></div>


<p>バックアップ追加。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading">Step3</h3>



<p>自動デプロイ。</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
GitHub
 ↓
サーバー
</pre></div>


<p>更新自動化。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">AI時代はGitが重要</h2>



<p>最近は特に重要。</p>



<p>AIは：</p>



<ul class="wp-block-list">
<li>一括変更</li>



<li>大量修正</li>



<li>想定外変更</li>
</ul>



<p>を普通にやる。</p>



<p>つまり、</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>「戻せる前提」</p>
</blockquote>



<p>がかなり重要になる。</p>



<p>Gitはその保険。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">よく使うGitコマンド一覧</h2>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>コマンド</th><th>内容</th></tr></thead><tbody><tr><td>git init</td><td>Git開始</td></tr><tr><td>git status</td><td>状態確認</td></tr><tr><td>git add .</td><td>変更追加</td></tr><tr><td>git commit -m &#8220;msg&#8221;</td><td>履歴保存</td></tr><tr><td>git push</td><td>GitHubへ送信</td></tr><tr><td>git pull</td><td>GitHub取得</td></tr><tr><td>git branch</td><td>branch一覧</td></tr><tr><td>git checkout</td><td>branch切替</td></tr><tr><td>git checkout -b</td><td>branch作成＋切替</td></tr><tr><td>git merge</td><td>branch統合</td></tr><tr><td>git restore .</td><td>変更取消</td></tr><tr><td>git log</td><td>履歴表示</td></tr><tr><td>git reset &#8211;hard</td><td>強制的に戻す</td></tr></tbody></table></figure>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">まとめ</h2>



<p>Gitは、</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>「完成品保存」</p>
</blockquote>



<p>ではなく、</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p>「安全に試行錯誤するための履歴管理」</p>
</blockquote>



<p>に近い。</p>



<p>特にAI開発では：</p>



<ul class="wp-block-list">
<li>壊れる速度が速い</li>



<li>修正範囲が広い</li>



<li>何を変えたか追いにくい</li>
</ul>



<p>ので、Gitの価値がかなり上がっている。</p>



<p>個人開発でも、</p>



<ul class="wp-block-list">
<li>復旧性</li>



<li>実験性</li>



<li>継続改善</li>
</ul>



<p>を考えるなら、かなり重要な基盤だと思う。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://lab.imeer.jp/git-github-version-control-beginner/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>SPSSでJADERデータを集計し、医療系発表資料用の分析表を作成した記録</title>
		<link>https://lab.imeer.jp/jader-spss-medical-analysis/</link>
					<comments>https://lab.imeer.jp/jader-spss-medical-analysis/#respond</comments>
		
		<dc:creator><![CDATA[Nori]]></dc:creator>
		<pubDate>Sat, 30 May 2026 14:49:22 +0000</pubDate>
				<category><![CDATA[業務改善ログ]]></category>
		<category><![CDATA[JADER]]></category>
		<category><![CDATA[SPSS]]></category>
		<category><![CDATA[データ分析]]></category>
		<category><![CDATA[医療統計]]></category>
		<category><![CDATA[医薬品副作用データベース]]></category>
		<category><![CDATA[業務改善]]></category>
		<category><![CDATA[発表資料]]></category>
		<category><![CDATA[統計解析]]></category>
		<guid isPermaLink="false">https://lab.imeer.jp/?p=742</guid>

					<description><![CDATA[2024年に、医療系の発表資料を作成するため、JADERデータを使った分析と取りまとめを行った。 JADERは、PMDAが公開している医薬品副作用データベースだ。副作用が疑われる症例報告をもとにしたデータであり、医薬品と [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>2024年に、医療系の発表資料を作成するため、JADERデータを使った分析と取りまとめを行った。</p>



<p>JADERは、PMDAが公開している医薬品副作用データベースだ。副作用が疑われる症例報告をもとにしたデータであり、医薬品と有害事象の関係を考えるうえで参考になる。</p>



<p>ただし、報告件数が多いから危険、少ないから安全、という読み方はできない。使用患者数、報告されやすさ、重複、併用薬、症例背景など、さまざまな要素が影響するためだ。</p>



<p>今回の作業は、JADERを研究として深掘りするというより、発表資料で使えるように必要な観点でデータを整理し、集計表やグラフの形に落とし込むことが主な目的だった。</p>



<h2 class="wp-block-heading">今回の作業範囲</h2>



<p>作業の内容は、JADERデータの内容確認、分析対象となる薬剤・有害事象の絞り込み、SPSSで扱いやすい形へのデータ整理、件数集計・クロス集計・割合の算出、発表資料用の表・グラフの作成、結果の読み取りメモの作成だ。</p>



<p>分析ツールはSPSSを使用した。Excelでもある程度の集計はできるが、項目数が多く条件を切り替えながら集計する場合は、SPSSの方が作業の見通しを立てやすい。特に、クロス集計やカテゴリ別集計を繰り返す場面では、どの条件で集計したのかを残しやすい点が助かった。</p>



<h2 class="wp-block-heading">JADERデータで最初に注意したこと</h2>



<p>最初に気を付けたのは、JADERのデータを「そのまま比較に使えるデータ」と見なさないことだった。</p>



<p>JADERは副作用が疑われる症例報告を集めたデータであり、医薬品を使ったすべての患者を把握しているわけではない。報告件数が多くなる理由には、使用患者数が多い、注目されている薬剤で報告されやすい、同じ症例に複数の有害事象が登録されている、といったことが挙げられる。</p>



<p>このあたりを整理しないままグラフにすると、発表資料としては見やすくても、読み手に誤解を与える可能性がある。今回の取りまとめでは、「件数が多い＝危険」と読める表現は避けた。</p>



<h2 class="wp-block-heading">SPSSに取り込む前の整理</h2>



<p>JADERのデータは、そのままSPSSに入れれば終わり、というものではなかった。分析対象にする項目を確認し、どの単位で集計するかを先に整理する必要があった。</p>



<p>特に迷ったのは、症例単位で見るのか、薬剤単位で見るのか、有害事象単位で見るのかという点だ。同じ症例に複数の薬剤や有害事象が紐づく場合があるため、集計単位を曖昧にしたまま作業すると件数の意味が分からなくなる。</p>



<p>作業前に、1行が何を表しているのか、症例番号をキーとして扱えるか、集計結果の件数は症例数なのか報告数なのか、発表資料ではどの粒度で見せるべきかを確認した。ここを先に決めておかないと、後から表やグラフを作ったときに説明が難しくなる。</p>



<h2 class="wp-block-heading">SPSSで行った主な集計</h2>



<p>主な集計は、対象薬剤ごとの報告件数、対象有害事象ごとの報告件数、年齢区分・性別・転帰別の集計、薬剤と有害事象のクロス集計、条件を絞ったサブグループ集計だ。</p>



<p>発表資料用の分析だったため、集計できる項目をすべて出すのではなく、説明に使えるものを選ぶ必要があった。全部出すと資料として逆に分かりにくくなる。そのため、まず全体像を見せ、次に対象薬剤・有害事象に絞り、必要に応じて背景情報を加え、最後に読み取り上の注意点を添える順番で整理した。</p>



<h2 class="wp-block-heading">発表資料用に意識した見せ方</h2>



<p>SPSSの出力表は確認用としては便利だが、そのままスライドに載せると情報量が多すぎる。発表資料では、表は必要な列だけに絞り、件数と割合の意味を明確にし、グラフは比較したい項目だけに限定した。</p>



<p>特に意識したのは、断定的な因果関係に見える表現を避けることと、注釈でJADERデータの性質を補足することだ。棒グラフにすると差が強調されるが、その差が本当に意味のある差なのかは別の問題である。グラフ化する場合でも、単純な順位付けに見えすぎないよう注意した。</p>



<h2 class="wp-block-heading">苦労した点と得たこと</h2>



<p>IT関連の業務に関する分析・統計は知見があったが、医療統計、SPSSの使い方も学習しながらの業務となった。分析をするまでについても簡単ではなかった。</p>



<p>さらに苦労したのは、分析そのものよりも結果の意味をどう説明するかだった。JADERのようなデータでは件数は出せる。しかしその件数をどう読むかは簡単ではない。</p>



<p>発表資料では限られたスライド数の中で説明する必要があり、注意点を省きすぎると単純な安全性比較のように見えてしまう。そのため、主な結果は絞り、補足資料として集計表を残し、スライド上には注釈を入れ、「傾向を確認するための集計」として位置づけるバランスを取った。</p>



<p>今回の作業で感じたのは、集計作業そのものよりも前提条件の整理が重要だということだ。どの単位で数えているのか、何を比較しているのか、その結果から何を言ってよいのかを整理しないと、発表資料としては危ういものになる。ツールよりも、最初の設計の方が重要だった。</p>



<h2 class="wp-block-heading">まとめ</h2>



<p>JADERデータの分析取りまとめでは、SPSSを使って発表資料用の集計表やグラフを作成した。重要だったのはSPSSの操作そのものではなく、JADERデータの性質を踏まえて結果をどう見せるかだった。</p>



<p>JADERは医薬品と有害事象の関係を考えるうえで有用なデータだが、単純な件数比較で安全性を判断できるものではない。その前提を崩さずに発表資料として整理する。今回の作業は、公開データを使った分析結果を誤解されにくい資料に整えるための実務だった。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://lab.imeer.jp/jader-spss-medical-analysis/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Microsoft 365で休暇申請を自動化｜Forms・Power Automate・Teams連携の構築事例</title>
		<link>https://lab.imeer.jp/power-automate-teams-leave-request-workflow/</link>
					<comments>https://lab.imeer.jp/power-automate-teams-leave-request-workflow/#respond</comments>
		
		<dc:creator><![CDATA[Nori]]></dc:creator>
		<pubDate>Sat, 30 May 2026 14:27:35 +0000</pubDate>
				<category><![CDATA[Power Automate]]></category>
		<category><![CDATA[業務改善ログ]]></category>
		<category><![CDATA[Microsoft 365]]></category>
		<category><![CDATA[Microsoft Forms]]></category>
		<category><![CDATA[Microsoft Teams]]></category>
		<category><![CDATA[Outlook]]></category>
		<category><![CDATA[ワークフロー]]></category>
		<category><![CDATA[休暇申請]]></category>
		<category><![CDATA[承認フロー]]></category>
		<category><![CDATA[業務改善]]></category>
		<category><![CDATA[自動化]]></category>
		<guid isPermaLink="false">https://lab.imeer.jp/?p=735</guid>

					<description><![CDATA[2025年に、Microsoft Forms、Power Automate、Teams、Outlook予定表を組み合わせた休暇申請ワークフローを構築した。 要件は「休暇申請は管理者が承認する」「休暇はカレンダーで全員で参 [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>2025年に、Microsoft Forms、Power Automate、Teams、Outlook予定表を組み合わせた休暇申請ワークフローを構築した。</p>



<p>要件は「休暇申請は管理者が承認する」「休暇はカレンダーで全員で参照可能とする」である。</p>



<p>休暇申請は「申請フォームを作る」だけでは終わらない。申請者が入力し、承認者に通知が届き、承認・却下され、カレンダーに反映され、結果が通知される。この一連の流れがつながっていないと、結局どこかで手作業が残る。</p>



<p>今回は、Microsoft 365環境の中で使える仕組みを前提に、休暇申請から承認、カレンダー登録、通知までをできるだけ一つの流れにまとめた。</p>



<h2 class="wp-block-heading">作成したワークフローの概要</h2>



<p>今回作成した休暇申請フローは、次のような流れで動作する。</p>



<ol class="wp-block-list">
<li>申請者が登録済みの休暇予定を確認する</li>



<li>Microsoft Formsから休暇申請を送信する</li>



<li>承認者へTeamsまたはOutlookで承認依頼を通知する</li>



<li>承認者が申請内容を承認または却下する</li>



<li>承認された休暇を指定のカレンダーへ登録する</li>



<li>申請者へ結果を通知する</li>
</ol>



<figure class="wp-block-image size-large"><img fetchpriority="high" decoding="async" width="1024" height="505" src="https://lab.imeer.jp/wp-content/uploads/2026/05/image-6-1024x505.png" alt="" class="wp-image-736" srcset="https://lab.imeer.jp/wp-content/uploads/2026/05/image-6-1024x505.png 1024w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-6-300x148.png 300w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-6-768x379.png 768w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-6-1536x758.png 1536w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-6.png 1637w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p>申請フォームはMicrosoft Formsで作成し、処理のつなぎ込みはPower Automateで行う構成とした。通知先はTeamsとOutlookのどちらにも対応できるよう整理した。</p>



<h2 class="wp-block-heading">対応した休暇パターン</h2>



<h3 class="wp-block-heading">複数日にまたがる休暇</h3>



<p>申請フォームで開始日と終了日を受け取り、承認後にカレンダーへ一括登録できるようにした。1日ずつ手作業で登録する手間がなくなるだけでなく、共有カレンダー上で見える形にすることで、チームメンバーが後から確認しやすくなる。</p>



<h3 class="wp-block-heading">時間休</h3>



<p>申請フォーム内に時間を記入する欄を設け、カレンダー登録時の予定名や補足情報に反映する想定とした。午前休・午後休・指定時間帯など、運用によって必要な表現は変わるため、要件定義の段階で入力項目と表示内容を調整する前提にした。</p>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="558" src="https://lab.imeer.jp/wp-content/uploads/2026/05/image-8-1024x558.png" alt="" class="wp-image-738" srcset="https://lab.imeer.jp/wp-content/uploads/2026/05/image-8-1024x558.png 1024w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-8-300x164.png 300w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-8-768x419.png 768w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-8-1536x837.png 1536w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-8.png 1636w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<h2 class="wp-block-heading">承認者への通知</h2>



<p>Formsから申請が送信されると、Power Automateが起動し、承認者へ承認依頼を送信する。承認者は、申請者名・休暇日・休暇区分・理由などを確認し、その場で承認または却下できる。</p>



<p>意識したのは、承認者が別の画面を探しに行かなくても判断できることだ。通知が届いても内容が足りなければ、結局Formsの回答や別ファイルを確認する必要が出てくる。そのため、承認画面上に必要な情報をできるだけ集約する構成にした。</p>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="545" src="https://lab.imeer.jp/wp-content/uploads/2026/05/image-9-1024x545.png" alt="" class="wp-image-739" srcset="https://lab.imeer.jp/wp-content/uploads/2026/05/image-9-1024x545.png 1024w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-9-300x160.png 300w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-9-768x408.png 768w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-9-1536x817.png 1536w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-9.png 1647w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<h2 class="wp-block-heading">承認後のカレンダー登録</h2>



<p>承認された申請については、指定されたカレンダーへ休暇予定を登録する。登録先は、部署内の休暇共有カレンダーやチームのOutlook予定表など、運用側で用意してもらう前提とした。</p>



<p>休暇情報は、チームとして確認できる場所に反映されて初めて業務調整に使える情報になる。特に、複数人の休暇予定を確認しながら調整する職場では、カレンダー連携の効果は大きい。</p>



<h2 class="wp-block-heading">申請者への通知</h2>



<p>承認結果は申請者にも通知する。承認時はチームへの共有も兼ねて、チームメンバーへも通知する形を想定した。一方、却下時はチーム全体に共有する必要は薄いため、申請者（または代行申請の場合は代行者）への個別通知とした。承認時と却下時で通知先を分けることで、必要以上に情報を広げない運用にできる。</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="515" src="https://lab.imeer.jp/wp-content/uploads/2026/05/image-10-1024x515.png" alt="" class="wp-image-740" srcset="https://lab.imeer.jp/wp-content/uploads/2026/05/image-10-1024x515.png 1024w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-10-300x151.png 300w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-10-768x386.png 768w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-10-1536x772.png 1536w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-10.png 1615w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<h2 class="wp-block-heading">作ってみて重要だと感じた点</h2>



<h3 class="wp-block-heading">申請フォームだけでは業務改善にならない</h3>



<p>Formsで入力を受け付けるだけでは、自動化としては半分しか完結していない。承認者への通知、承認結果の保存、カレンダー登録、申請者への返答、チームへの共有——このあたりまで含めて考えないと、フォームだけ増えて裏側の手作業が残る。</p>



<h3 class="wp-block-heading">カレンダー登録までつなげると効果が出やすい</h3>



<p>休暇申請は、承認されて終わりではない。承認済みの休暇を共有カレンダーへ反映しておけば、後からメールや申請履歴を探す手間が減る。</p>



<h3 class="wp-block-heading">通知先はTeamsとOutlookのどちらがよいか</h3>



<p>どちらが優れているかではなく、現場で普段どちらを見ているかで決める方がよい。Teamsを日常的に使っている組織ではTeams通知の方が見落としにくく、正式な通知や記録性を重視する場合はOutlookメールが扱いやすいこともある。</p>



<h3 class="wp-block-heading">個別の会社ルールに合わせる必要がある部分</h3>



<p>休暇申請は会社ごとのルール差が出やすい。休暇区分の種類、承認者の決め方、却下時の通知先、カレンダーに表示する文言、休暇理由をどこまで共有するかといった点は、事前に確認が必要になる。</p>



<p>特に注意が必要なのは、休暇理由の扱いだ。承認者には見せるとしても、チーム全体に同じ情報を通知してよいとは限らない。承認者向けの情報とチーム共有向けの情報は分けて考える必要がある。</p>



<h2 class="wp-block-heading">まとめ</h2>



<p>休暇申請ワークフローは、申請フォームを作るだけでは完結しない。承認者への通知、承認・却下、カレンダー登録、申請者への結果通知までつながって初めて、現場の手間が減る。</p>



<p>今回の構成では、Microsoft Forms・Power Automate・Teams・Outlook予定表を組み合わせることで、一連の流れを自動化した。大きな業務システムを新しく作らなくても、既存のMicrosoft 365環境を活用しながら比較的小さく始められるのが、この構成の扱いやすさだと感じた。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://lab.imeer.jp/power-automate-teams-leave-request-workflow/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのXLOOKUP関数の使い方｜VLOOKUPとの違い・使えない原因まで解説</title>
		<link>https://lab.imeer.jp/excel-xlookup-function/</link>
					<comments>https://lab.imeer.jp/excel-xlookup-function/#respond</comments>
		
		<dc:creator><![CDATA[Nori]]></dc:creator>
		<pubDate>Sat, 30 May 2026 13:48:46 +0000</pubDate>
				<category><![CDATA[Excel]]></category>
		<category><![CDATA[Excel・VBA]]></category>
		<category><![CDATA[関数の使い方]]></category>
		<category><![CDATA[Excel 検索関数]]></category>
		<category><![CDATA[ExcelXLOOKUP関数]]></category>
		<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[VLOOKUP 違い]]></category>
		<category><![CDATA[XLOOKUP 使い方]]></category>
		<category><![CDATA[実務Excel]]></category>
		<guid isPermaLink="false">https://lab.imeer.jp/?p=732</guid>

					<description><![CDATA[Excelで作業していると、関数の名前は知っていても、実際の表に入れた瞬間に詰まることがある。範囲の大きさ、空白、文字列の扱い、Excelのバージョン差など、公式の構文だけでは見落としやすい点は多い。 この記事では、Ex [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Excelで作業していると、関数の名前は知っていても、実際の表に入れた瞬間に詰まることがある。範囲の大きさ、空白、文字列の扱い、Excelのバージョン差など、公式の構文だけでは見落としやすい点は多い。</p>



<p>この記事では、Excel XLOOKUP関数を実務の作業メモとして整理する。関数の説明だけで終わらせず、どこで使い、どこで崩れやすく、他の方法とどう使い分けるかまで見ていく。</p>



<h2 class="wp-block-heading">Excel XLOOKUP関数とは</h2>



<p>XLOOKUP関数は、指定した値を検索して対応する値を返す関数だ。VLOOKUPの後継にあたる位置づけで、検索範囲と戻り範囲を別々に指定できる点が大きな違いである。VLOOKUPで必要だった「何列目を返すか」という列番号の指定が不要になり、列の追加・削除による式崩れが起きにくい。</p>



<p>ただし、使えるのはMicrosoft 365またはExcel 2021以降だ。共有先のExcel環境で開くファイルに使う場合は、相手側のバージョンを先に確認しておくのが無難である。</p>




	<div class="loco-comment loco-comment-right loco-comment-normal">
		<div class="loco-comment-image">
			<img decoding="async" src="https://lab.imeer.jp/wp-content/uploads/2026/05/469c67917f5a98d4c33f9fe5d85798b3-1.png" alt="ロコ" loading="lazy">
		</div>
		<div class="loco-comment-balloon">
			XLOOKUPは便利だが、相手先のExcelで開けるかは別問題。共有先の環境は先に見る。
		</div>
	</div>



<h2 class="wp-block-heading">基本構文</h2>



<p>excel</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
=XLOOKUP(lookup_value,lookup_array,return_array,&#x5B;if_not_found],&#x5B;match_mode],&#x5B;search_mode])
</pre></div>


<ul class="wp-block-list">
<li><strong>lookup_value</strong>（必須）：検索したい値</li>



<li><strong>lookup_array</strong>（必須）：検索する範囲（1列または1行）</li>



<li><strong>return_array</strong>（必須）：返す値がある範囲</li>



<li><strong>if_not_found</strong>（省略可）：一致しなかったときに返す値。省略すると <code>#N/A</code> が表示される</li>



<li><strong>match_mode</strong>（省略可）：一致の種類。0が完全一致（省略時のデフォルト）</li>



<li><strong>search_mode</strong>（省略可）：検索の方向。1が先頭から（省略時のデフォルト）</li>
</ul>



<p>関数名が認識されない場合は、式を直す前にExcelのバージョンや更新チャネルを確認したい。</p>



<h2 class="wp-block-heading">基本例</h2>



<p>excel</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
=XLOOKUP(E2,A2:A100,C2:C100,&quot;該当なし&quot;)
</pre></div>


<p>E2の値をA列で検索し、一致した行のC列の値を返す。一致しない場合は「該当なし」を表示する。最初は小さい範囲で動作を確認してから実表に広げるとよい。いきなり全体に入れると、エラーが出たときに原因の切り分けが難しくなる。</p>



<h2 class="wp-block-heading">実務でよく使うパターン</h2>



<h3 class="wp-block-heading">社員IDから氏名や部署を返す</h3>



<p>社員IDが入力されたセル（E2）を起点に、社員マスタのID列を検索して氏名や部署を返す使い方だ。</p>



<p>excel</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
=XLOOKUP(E2,社員マスタ&#x5B;社員ID],社員マスタ&#x5B;氏名],&quot;該当なし&quot;)
</pre></div>


<p>テーブル参照にしておくと、社員の追加・削除が起きても範囲が自動で広がるため式が崩れにくい。return_arrayを <code>社員マスタ[部署]</code> に変えるだけで返す列を切り替えられるのも、VLOOKUPと比べて変更しやすい点だ。</p>



<h3 class="wp-block-heading">商品コードから単価を返す</h3>



<p>注文書や見積書など、商品コードを入力したら単価が自動で入る仕組みを作るときの基本形だ。</p>



<p>excel</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
=XLOOKUP(E2,商品マスタ&#x5B;商品コード],商品マスタ&#x5B;単価],&quot;該当なし&quot;)
</pre></div>


<p>商品コードの書式（文字列か数値か）が検索側と一致していないと、正しく検索できないことがある。エラーが出た場合はまず元データの型を確認する。</p>



<h3 class="wp-block-heading">検索列の左側にある値を返す</h3>



<p>VLOOKUPは検索列より右の列しか返せないが、XLOOKUPは検索範囲と戻り範囲を独立して指定するため、左側の列も返せる。</p>



<p>excel</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
=XLOOKUP(E2,C2:C100,A2:A100,&quot;該当なし&quot;)
</pre></div>


<p>C列で検索してA列（左側）の値を返す例だ。表の構造を変えずに左方向の検索ができるのは、XLOOKUPの実務上の利点のひとつである。</p>



<h2 class="wp-block-heading">よくあるエラー・うまくいかない原因</h2>



<ul class="wp-block-list">
<li><strong>関数名が認識されない</strong>：ExcelのバージョンがMicrosoft 365またはExcel 2021以降かを確認する</li>



<li><strong>lookup_arrayとreturn_arrayのサイズが合っていない</strong>：行数または列数が異なると結果が崩れる。それぞれの範囲が同じサイズになっているかを見る</li>



<li><strong>完全一致しない</strong>：match_modeを省略すると完全一致（0）になる。近似一致やバイナリ検索を使う場合は、データが昇順・降順に並んでいる前提があることを確認する</li>
</ul>



<p>エラーが出たときは、関数の引数だけでなく元データの状態を見るのが先決だ。空白に見えるセルにスペースが入っている、日付に見える値が文字列になっている、といった原因は実務でよく起きる。</p>




	<div class="loco-comment loco-comment-right loco-comment-normal">
		<div class="loco-comment-image">
			<img decoding="async" src="https://lab.imeer.jp/wp-content/uploads/2026/05/469c67917f5a98d4c33f9fe5d85798b3-1.png" alt="ロコ" loading="lazy">
		</div>
		<div class="loco-comment-balloon">
			式を長くする前に、元データの型、空白、範囲サイズを確認する。ここを飛ばすと、正しい式でも期待通りに動かない。
		</div>
	</div>



<h2 class="wp-block-heading">似た関数・古いやり方との使い分け</h2>



<p>XLOOKUPはVLOOKUPと比べて、列番号の指定が不要・左方向の検索が可能・一致しない場合の表示を引数で設定できるという点で扱いやすい。</p>



<p>一方、VLOOKUPはExcel 2010以降であれば使えるため、古い環境と共有するファイルでは今も現役だ。既存ファイルに組み込まれたVLOOKUPを無理に書き換える必要はない。新規で作るファイルでバージョンの問題がなければXLOOKUPを選ぶ、という使い分けで十分である。</p>



<h2 class="wp-block-heading">他の関数との組み合わせ</h2>



<ul class="wp-block-list">
<li><strong>FILTER関数</strong>：複数条件で絞り込んだ結果をXLOOKUPに渡すより、複数行を返したい場合はFILTERの方が向いている場面もある。役割の違いを意識して使い分けるとよい</li>



<li><strong>SUMIFS関数</strong>：「一致した値を合計したい」場合はXLOOKUPではなくSUMIFSを使う。XLOOKUPは単一の値を返す関数であり、集計には向いていない</li>



<li><strong>LET関数</strong>：同じ範囲を複数回参照する式が長くなった場合、LETで中間結果に名前を付けると読みやすくなる</li>
</ul>



<p>複数の関数を組み合わせるときは、まず「何をしたいか」を役割ごとに分けて考えるとよい。検索・抽出・集計・並べ替えをひとつの式に詰め込むと後から読みにくくなる。</p>



<h2 class="wp-block-heading">まとめ</h2>



<p>Excel XLOOKUP関数は、VLOOKUPの使いにくさを解消した検索関数だ。列番号の指定が不要で、左方向の検索にも対応している。一方で、使える環境がExcel 2021またはMicrosoft 365以降に限られるため、共有先のバージョン確認は先に済ませておきたい。</p>



<p>範囲・データ型・空白・バージョンまで含めて把握しておくと、式の失敗原因を切り分けやすくなる。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://lab.imeer.jp/excel-xlookup-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Excelで重複なしのリストを自動作成する方法｜UNIQUE関数で一覧を作る</title>
		<link>https://lab.imeer.jp/excel-create-unique-list/</link>
					<comments>https://lab.imeer.jp/excel-create-unique-list/#respond</comments>
		
		<dc:creator><![CDATA[Nori]]></dc:creator>
		<pubDate>Sat, 30 May 2026 13:40:15 +0000</pubDate>
				<category><![CDATA[Excel]]></category>
		<category><![CDATA[Excel・VBA]]></category>
		<category><![CDATA[関数の使い方]]></category>
		<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[FILTER]]></category>
		<category><![CDATA[SORT]]></category>
		<category><![CDATA[UNIQUE]]></category>
		<category><![CDATA[重複なしリスト]]></category>
		<category><![CDATA[重複削除]]></category>
		<guid isPermaLink="false">https://lab.imeer.jp/?p=727</guid>

					<description><![CDATA[担当者名、商品名、部署名などのリストを手で管理していると、元データが増えたときに更新漏れが出やすい。こうした一覧を自動で作り直したいなら、UNIQUE関数を使うのが手っ取り早い。 この記事では、重複なしリストを自動作成す [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>担当者名、商品名、部署名などのリストを手で管理していると、元データが増えたときに更新漏れが出やすい。こうした一覧を自動で作り直したいなら、UNIQUE関数を使うのが手っ取り早い。</p>



<p>この記事では、重複なしリストを自動作成する実務手順を整理する。</p>



<h2 class="wp-block-heading">UNIQUE関数で重複なし一覧を作る</h2>



<p>excel</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
=UNIQUE(A2:A100)
</pre></div>


<p>この式は、A2:A100の範囲から重複しない値を一覧として返す。結果は複数セルに広がる（スピル）ため、出力先のセルを空けておく必要がある。既存の値があると <code>#SPILL!</code> エラーになる。</p>



<h2 class="wp-block-heading">重複の削除機能との違い</h2>



<p>Excelの「重複の削除」は、選択したデータ自体を直接書き換える操作だ。一度だけ固定リストを作るなら手軽で使いやすい。</p>



<p>UNIQUE関数は、元データを残したまま別の場所に重複なし一覧を作る。元データが更新されると結果も自動で変わるため、継続的に使うリストにはUNIQUEの方が運用に合いやすい。</p>




	<div class="loco-comment loco-comment-right loco-comment-normal">
		<div class="loco-comment-image">
			<img decoding="async" src="https://lab.imeer.jp/wp-content/uploads/2026/05/469c67917f5a98d4c33f9fe5d85798b3-1.png" alt="ロコ" loading="lazy">
		</div>
		<div class="loco-comment-balloon">
			リストを手で更新し始めたら、だいたい抜け漏れが出る。更新される元データなら数式化しておく価値がある。
		</div>
	</div>



<h2 class="wp-block-heading">元データが増える場合はテーブル化する</h2>



<p>固定範囲のままだと、101行目以降に追加したデータが式の対象に入らない。元データをExcelテーブルに変換しておくと、行追加時に参照範囲が自動で広がるため崩れにくくなる。</p>



<p>excel</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
=UNIQUE(売上一覧&#x5B;担当者])
</pre></div>


<p>テーブル化の手順は、元データを選択して「挿入」→「テーブル」から行える。テーブル名は後から「テーブルデザイン」タブで変更できる。</p>



<h2 class="wp-block-heading">SORTと組み合わせて並べ替える</h2>



<p>UNIQUE単体では、結果の並び順が元データの出現順になる。見やすくしたい場合や、プルダウンリストとして使う場合はSORTを組み合わせるとよい。</p>



<p>excel</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
=SORT(UNIQUE(売上一覧&#x5B;担当者]))
</pre></div>


<h2 class="wp-block-heading">FILTERと組み合わせて条件付きリストにする</h2>



<p>地域や部署で絞った上で重複なし一覧を作るなら、FILTERを内側に組み合わせる。</p>



<p>excel</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
=UNIQUE(FILTER(売上一覧&#x5B;担当者],売上一覧&#x5B;地域]=B1))
</pre></div>


<p>B1に地域名を入れると、その地域の担当者だけを重複なしで一覧表示できる。B1の値を変えると結果も自動で切り替わる。</p>



<h2 class="wp-block-heading">プルダウンリストの元データにも使える</h2>



<p>UNIQUEで作った一覧は、入力規則（データの入力規則）のリストの元データ候補として使える場合がある。ただし、スピル範囲をそのまま参照するには <code>#</code> 演算子を使う方法があり、Excelのバージョンによって挙動が異なる。公開前に実ファイルで動作を確認しておきたい。</p>



<h2 class="wp-block-heading">まとめ</h2>



<p>重複なしリストを継続して使うなら、UNIQUE関数・テーブル化・SORTの組み合わせが扱いやすい。条件で絞り込んだ上で一覧を作りたい場合はFILTERを足す。元データを直接加工せず、数式として管理しておくことで、更新のたびに手直しする手間を減らせる。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://lab.imeer.jp/excel-create-unique-list/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>FILTER・SORT・UNIQUE関数の使い分け｜抽出・並べ替え・重複削除を整理する</title>
		<link>https://lab.imeer.jp/filter-sort-unique-comparison/</link>
					<comments>https://lab.imeer.jp/filter-sort-unique-comparison/#respond</comments>
		
		<dc:creator><![CDATA[Nori]]></dc:creator>
		<pubDate>Tue, 26 May 2026 22:15:11 +0000</pubDate>
				<category><![CDATA[Excel]]></category>
		<category><![CDATA[Excel・VBA]]></category>
		<category><![CDATA[関数の使い方]]></category>
		<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[FILTER]]></category>
		<category><![CDATA[SORT]]></category>
		<category><![CDATA[UNIQUE]]></category>
		<category><![CDATA[動的配列]]></category>
		<category><![CDATA[実務Excel]]></category>
		<guid isPermaLink="false">https://lab.imeer.jp/?p=725</guid>

					<description><![CDATA[FILTER、SORT、UNIQUEはまとめて語られやすいが、やっていることはそれぞれ異なる。FILTERは条件に合うデータの抽出、SORTは並べ替え、UNIQUEは重複なし一覧の作成だ。 役割が違うぶん、組み合わせ方に [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>FILTER、SORT、UNIQUEはまとめて語られやすいが、やっていることはそれぞれ異なる。FILTERは条件に合うデータの抽出、SORTは並べ替え、UNIQUEは重複なし一覧の作成だ。</p>



<p>役割が違うぶん、組み合わせ方にも順番がある。この記事では、3つを単独で使う場合、2つずつ組み合わせる場合、3つすべてを組み合わせる場合に分けて整理する。</p>



<h2 class="wp-block-heading">使い分け表</h2>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>関数</th><th>主な役割</th><th>使う場面</th></tr></thead><tbody><tr><td>FILTER</td><td>条件に合う行や列を抽出する</td><td>担当者別、地域別、ステータス別の一覧</td></tr><tr><td>SORT</td><td>結果を並べ替える</td><td>日付順、金額順、名前順に見せたい</td></tr><tr><td>UNIQUE</td><td>重複なし一覧を作る</td><td>担当者リスト、商品リスト、集計軸</td></tr></tbody></table></figure>



<h2 class="wp-block-heading">FILTERは条件抽出</h2>



<p>excel</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
=FILTER(A2:F100,C2:C100=&quot;東日本&quot;,&quot;該当なし&quot;)
</pre></div>


<p>FILTERは、指定した条件に合う行だけを取り出す関数だ。第3引数に「該当なし」のような文字列を入れておくと、条件に一致するデータがなかったときのエラー表示を防げる。別シートに条件付き一覧を作るときの主役になる関数である。</p>



<h2 class="wp-block-heading">SORTは並べ替え</h2>



<p>excel</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
=SORT(A2:F100,1,1)
</pre></div>


<p>SORTは、一覧の並び順を整える関数だ。第2引数で基準にする列番号、第3引数で昇順（1）・降順（-1）を指定する。抽出した結果をそのまま並べ替えたいときは、FILTERの外側にSORTを重ねて使うことが多い。</p>



<h2 class="wp-block-heading">UNIQUEは重複なし一覧</h2>



<p>excel</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
=UNIQUE(A2:A100)
</pre></div>


<p>UNIQUEは、元データに手を加えず、重複を除いた一覧を別のセルに返す関数だ。集計表の行見出しや、プルダウンリストの元データを作るときに使いやすい。元データが更新されると結果も自動で変わるため、繰り返し使う一覧管理に向いている。</p>




	<div class="loco-comment loco-comment-right loco-comment-normal">
		<div class="loco-comment-image">
			<img decoding="async" src="https://lab.imeer.jp/wp-content/uploads/2026/05/469c67917f5a98d4c33f9fe5d85798b3-1.png" alt="ロコ" loading="lazy">
		</div>
		<div class="loco-comment-balloon">
			この3つは順番の関数。何を先に絞って、何を残して、最後にどう見せるかを考える。
		</div>
	</div>



<h2 class="wp-block-heading">2つずつ組み合わせる例</h2>



<h3 class="wp-block-heading">FILTER + SORT</h3>



<p>excel</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
=SORT(FILTER(A2:F100,C2:C100=&quot;東日本&quot;),1,1)
</pre></div>


<p>条件に合う行を取り出してから並べ替える。FILTERで絞った結果がそのまま並べ替えの対象になるため、SORTを外側に置く形になる。</p>



<h3 class="wp-block-heading">UNIQUE + SORT</h3>



<p>excel</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
=SORT(UNIQUE(A2:A100))
</pre></div>


<p>重複なし一覧を作ってから、見やすい順に並べる。プルダウンリストの元データとして使う場合は、この形にしておくとユーザーが探しやすい。</p>



<h3 class="wp-block-heading">FILTER + UNIQUE</h3>



<p>excel</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
=UNIQUE(FILTER(A2:A100,B2:B100=&quot;東日本&quot;))
</pre></div>


<p>条件に合うデータだけを対象にして、重複なし一覧を作る。UNIQUE単体では全データが対象になるが、FILTERを内側に入れることで絞り込んだ範囲の重複除外ができる。</p>



<h2 class="wp-block-heading">3つ全部を組み合わせる例</h2>



<p>excel</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
=SORT(UNIQUE(FILTER(A2:A100,B2:B100=&quot;東日本&quot;)))
</pre></div>


<p>この式は、東日本のデータだけを抽出し、重複を除き、最後に並べ替える。内側から「何をするか」が決まる構造なので、まずFILTERで絞り込み、次にUNIQUEで重複を除き、最後にSORTで見せ方を整える、という順番で組み立てると考えやすい。順番を変えると意味が変わるため注意が必要だ。</p>



<h2 class="wp-block-heading">数式が長くなったらLETを検討する</h2>



<p>excel</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
=LET(data,FILTER(A2:A100,B2:B100=&quot;東日本&quot;),SORT(UNIQUE(data)))
</pre></div>


<p>入れ子が深くなると、後から修正したいときに読み解くのに時間がかかる。LETを使って中間結果に名前を付けておくと、式が何をしているかの意図が残りやすく、メンテナンスしやすくなる。</p>



<h2 class="wp-block-heading">まとめ</h2>



<p>FILTER、SORT、UNIQUEは、抽出・並べ替え・重複なしという別の役割を持つ関数だ。組み合わせるときは、最終的に得たい結果から逆算して、内側から順番に組み立てていくと整理しやすい。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://lab.imeer.jp/filter-sort-unique-comparison/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのUNIQUE関数で重複しない一覧を作る方法｜重複削除との違いも解説</title>
		<link>https://lab.imeer.jp/excel-unique-function/</link>
					<comments>https://lab.imeer.jp/excel-unique-function/#respond</comments>
		
		<dc:creator><![CDATA[Nori]]></dc:creator>
		<pubDate>Tue, 26 May 2026 22:10:21 +0000</pubDate>
				<category><![CDATA[Excel]]></category>
		<category><![CDATA[Excel・VBA]]></category>
		<category><![CDATA[関数の使い方]]></category>
		<category><![CDATA[Excel 重複しない一覧]]></category>
		<category><![CDATA[ExcelUNIQUE関数]]></category>
		<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[UNIQUE 重複なし]]></category>
		<category><![CDATA[実務Excel]]></category>
		<category><![CDATA[重複の削除 違い]]></category>
		<guid isPermaLink="false">https://lab.imeer.jp/?p=723</guid>

					<description><![CDATA[Excelで作業していると、関数の名前は知っていても、実際の表に入れた瞬間に詰まることがある。範囲の大きさ、空白、文字列の扱い、Excelのバージョン差など、公式の構文だけでは見落としやすい点は多い。 この記事では、Ex [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Excelで作業していると、関数の名前は知っていても、実際の表に入れた瞬間に詰まることがある。範囲の大きさ、空白、文字列の扱い、Excelのバージョン差など、公式の構文だけでは見落としやすい点は多い。</p>



<p>この記事では、Excel UNIQUE関数を実務の作業メモとして整理する。関数の説明だけで終わらせず、どこで使い、どこで崩れやすく、他の方法とどう使い分けるかまで見ていく。</p>



<h2 class="wp-block-heading">Excel UNIQUE関数とは</h2>



<p>UNIQUE関数は、指定した範囲から重複を除いた値の一覧を返す関数だ。元データを直接書き換えるのではなく、別の場所に「重複なしの結果」を動的に表示できるのが特徴である。</p>



<p>元データが更新されると結果も自動で変わるため、継続的に使う一覧管理に向いている。一方で、Excelのバージョンによっては使えない場合があるため、共有先の環境には注意が必要だ。</p>



	<div class="loco-comment loco-comment-right loco-comment-normal">
		<div class="loco-comment-image">
			<img decoding="async" src="https://lab.imeer.jp/wp-content/uploads/2026/05/469c67917f5a98d4c33f9fe5d85798b3-1.png" alt="ロコ" loading="lazy">
		</div>
		<div class="loco-comment-balloon">
			重複を消すというより、元データの横に「重複なしビュー」を作る感覚で使うと管理しやすい。
		</div>
	</div>



<h2 class="wp-block-heading">基本構文</h2>



<p>excel</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
=UNIQUE(array,&#x5B;by_col],&#x5B;exactly_once])
</pre></div>


<ul class="wp-block-list">
<li><strong>array</strong>（必須）：重複を除きたい範囲</li>



<li><strong>by_col</strong>（省略可）：TRUEで列方向に比較。省略するとFALSE（行方向）</li>



<li><strong>exactly_once</strong>（省略可）：TRUEにすると、1回だけ登場する値のみを返す</li>
</ul>



<p>この関数が使えるのはMicrosoft 365またはExcel 2021以降だ。関数名が認識されない場合は、式を直す前にExcelのバージョンや更新チャネルを確認したい。</p>



<h2 class="wp-block-heading">基本例</h2>



<p>excel</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
=UNIQUE(A2:A100)
</pre></div>


<p>最初は小さい範囲で試すのが基本だ。いきなり実表全体に入れると、エラーが出たときに原因が範囲なのか、条件なのか、データの型なのか切り分けにくくなる。1列・短い範囲で結果を確認してから広げていくとよい。</p>



<h2 class="wp-block-heading">実務でよく使うパターン</h2>



<h3 class="wp-block-heading">1列の担当者名から重複しない担当者一覧を作る</h3>



<p>excel</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
=UNIQUE(A2:A100)
</pre></div>


<p>担当者名が入ったA列に対してそのまま使える。注意したいのは範囲の固定だ。行が追加されるたびに式が古くならないよう、継続運用する表ではExcelテーブルに変換して列名で参照する方法が崩れにくい。</p>



<p>excel</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
=UNIQUE(テーブル1&#x5B;担当者])
</pre></div>


<p>テーブル参照にしておくと、行追加時に自動で範囲が広がるため、式を直す手間がなくなる。</p>



<h3 class="wp-block-heading">部署と担当者の2列を組み合わせて、ペア単位で重複を除く</h3>



<p>複数列をまとめて対象にしたい場合は、範囲を列ごとに広げるだけでよい。</p>



<p>excel</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
=UNIQUE(A2:B100)
</pre></div>


<p>この場合、「部署と担当者の組み合わせ」が一致するものを重複と見なして除外する。どちらか片方だけ同じでも、組み合わせが違えば別の行として残る。</p>



<h3 class="wp-block-heading">SORT関数と組み合わせて並べ替えた状態で表示する</h3>



<p>excel</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
=SORT(UNIQUE(A2:A100))
</pre></div>


<p>UNIQUE単体では元データの出現順に結果が並ぶ。SORT関数を外側に組み合わせると、重複を除きつつ昇順に並べ替えた一覧を返せる。ドロップダウンリストの元データとして使う場合などは、この形にしておくと見やすい。</p>



<h2 class="wp-block-heading">よくあるエラー・うまくいかない原因</h2>



<ul class="wp-block-list">
<li><strong>スピルエラー（#SPILL!）</strong>：結果が複数セルに広がる（スピル）ため、出力先のセルに既存の値があると動作しない。出力先を空にしてから入力する</li>



<li><strong>空白が残る</strong>：元データに空白セルが含まれると、空白も一意の値として結果に含まれることがある。FILTER関数と組み合わせて空白行を除外するとよい</li>



<li><strong>範囲が古くなる</strong>：元データが増える運用では、固定範囲（A2:A100など）より前述のテーブル参照の方が崩れにくい</li>
</ul>



<p>エラーが出たときは、関数の引数だけでなく元データの状態を確認するのが先決だ。空白に見えるセルにスペースが入っている、日付に見える値が文字列になっている、といった原因は実務でよく起きる。</p>



	<div class="loco-comment loco-comment-right loco-comment-normal">
		<div class="loco-comment-image">
			<img decoding="async" src="https://lab.imeer.jp/wp-content/uploads/2026/05/469c67917f5a98d4c33f9fe5d85798b3-1.png" alt="ロコ" loading="lazy">
		</div>
		<div class="loco-comment-balloon">
			式を長くする前に、元データの型、空白、範囲サイズを確認する。ここを飛ばすと、正しい式でも期待通りに動かない。
		</div>
	</div>



<h2 class="wp-block-heading">似た機能・古いやり方との使い分け</h2>



<p><strong>「重複の削除」機能との違い</strong>は明確だ。重複の削除はその時点のデータを直接書き換える操作で、元に戻すには元データを保持しておく必要がある。UNIQUE関数は元データを残したまま、別セルに動的な結果一覧を作る。提出用データを一度だけ整理するなら「重複の削除」でも問題ないが、元データが更新される一覧を管理するならUNIQUEが向いている。</p>



<p>古いやり方を全部捨てる必要はない。既存ファイルの環境、共有先のExcelバージョン、作業が一度きりか繰り返しかで、使うべき方法は変わる。</p>



<h2 class="wp-block-heading">他の関数との組み合わせ</h2>



<ul class="wp-block-list">
<li><strong>FILTER関数</strong>：条件に合う行だけを先に絞り込んでからUNIQUEに渡すことで、「特定の部署の担当者一覧」のような絞り込み＋重複除外ができる</li>



<li><strong>SORT関数</strong>：UNIQUE関数の結果をそのまま並べ替える。<code>=SORT(UNIQUE(A2:A100))</code> のように外側に重ねて使う</li>



<li><strong>TEXTSPLIT関数</strong>：1セルに「,」区切りで入った値を分割してからUNIQUEに渡すと、結合された文字列でも重複除外が可能になる</li>
</ul>



<p>複数の関数を組み合わせるときは、最初に「何をしたいか」を役割ごとに分けて考えるとよい。抽出・並べ替え・重複除外・文字列変換を一つの式に詰め込むと後から読みにくくなる。式が長くなる場合はLET関数で中間結果に名前を付ける選択肢もある。</p>



<h2 class="wp-block-heading">まとめ</h2>



<p>Excel UNIQUE関数は、構文を覚えるだけでは実務に乗りにくい。範囲・データ型・空白・出力先・共有先のExcel環境まで含めて把握しておくと、式の失敗原因を切り分けやすくなる。</p>



<p>継続的に更新されるデータで「重複なし一覧」を管理する場面では、「重複の削除」機能よりUNIQUE関数の方が運用しやすい。FILTER・SORTと組み合わせることで、より実用的な使い方に広げられる。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://lab.imeer.jp/excel-unique-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ChatGPT Projectsは単なるフォルダじゃない｜テーマごとの作業部屋として使う</title>
		<link>https://lab.imeer.jp/chatgpt-projects-workspace/</link>
					<comments>https://lab.imeer.jp/chatgpt-projects-workspace/#respond</comments>
		
		<dc:creator><![CDATA[Nori]]></dc:creator>
		<pubDate>Sun, 24 May 2026 16:26:43 +0000</pubDate>
				<category><![CDATA[AI活用]]></category>
		<category><![CDATA[ChatGPT活用]]></category>
		<category><![CDATA[ChatGPT]]></category>
		<category><![CDATA[GPTs]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[カスタム指示]]></category>
		<category><![CDATA[ブログ運営]]></category>
		<category><![CDATA[個人開発]]></category>
		<guid isPermaLink="false">https://lab.imeer.jp/?p=719</guid>

					<description><![CDATA[ChatGPTのProjectsを、最初はチャットを整理するためのフォルダのようなものだと思っていた。 たしかに、見た目はフォルダに近い。 ブログ用のチャット。LINEスタンプ用のチャット。AI活用記事用のチャット。仕事 [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>ChatGPTのProjectsを、最初はチャットを整理するためのフォルダのようなものだと思っていた。</p>



<p>たしかに、見た目はフォルダに近い。</p>



<p>ブログ用のチャット。<br>LINEスタンプ用のチャット。<br>AI活用記事用のチャット。<br>仕事の整理用のチャット。</p>



<p>そういうものをまとめておく場所として見ると、Projectsは「チャットの分類箱」に見える。</p>



<p>ただ、実際に使ってみると、それだけでは少し足りなかった。</p>



<p>Projectsは、単なるフォルダというより、そのテーマの前提、資料、方針、判断軸を置いておく作業部屋に近い。</p>



<h2 class="wp-block-heading">Projectsは何をするための機能なのか</h2>



<p>OpenAIの公式ヘルプでは、Projectsは長く続く作業に関係するものを一か所にまとめるワークスペースとして説明されている。</p>



<p>具体的には、Project内に以下をまとめられる。</p>



<ul class="wp-block-list">
<li>関連するチャット</li>



<li>参照したいファイル</li>



<li>Projectごとの指示</li>



<li>そのテーマで使う文脈や前提</li>
</ul>



<p>つまり、Projectsはチャットを入れるだけの箱ではない。</p>



<p>チャット、ファイル、指示をまとめて、そのテーマで作業を続けやすくするための場所だ。</p>



<p>ここが、通常チャットとの大きな違いになる。</p>



<p>通常チャットは、その場の相談に向いている。</p>



<p>「この文章を直して」<br>「このエラーの意味を教えて」<br>「このアイデアを整理して」</p>



<p>このくらいなら、通常チャットで十分だ。</p>



<p>一方で、何度も続くテーマになると、毎回前提を説明するのが面倒になる。</p>



<p>このブログはどういう方針なのか。<br>このシリーズでは何を扱ってきたのか。<br>このツールは何のために作ったのか。<br>このProjectでは何をやらないことにしているのか。</p>



<p>そういう前提を置いておく場所として、Projectsが効いてくる。</p>



<h2 class="wp-block-heading">フォルダではなく「作業部屋」と考える</h2>



<p>Projectsをフォルダだと思うと、使い方は整理で止まりやすい。</p>



<p>チャットを分類する。<br>後から見つけやすくする。<br>テーマごとにまとめる。</p>



<p>もちろん、それも便利だ。</p>



<p>ただ、それだけだと少しもったいない。</p>



<p>Projectsは、チャットをしまう箱というより、そのテーマで作業するための部屋として考えた方が使いやすい。</p>



<p>たとえば、ブログ運営のProjectなら、そこにはブログ運営の前提がある。</p>



<p>どんな読者に向けて書くのか。<br>どんな文体にするのか。<br>どんな表現を避けるのか。<br>どの記事シリーズとつながるのか。<br>noteや無料ツールへの導線をどう考えるのか。</p>



<p>こういう前提をProject側に置いておく。</p>



<p>すると、毎回ゼロから説明しなくても、「このProjectではこういう方針で考える」という状態を作りやすくなる。</p>



	<div class="loco-comment loco-comment-right loco-comment-normal">
		<div class="loco-comment-image">
			<img decoding="async" src="https://lab.imeer.jp/wp-content/uploads/2026/05/469c67917f5a98d4c33f9fe5d85798b3-1.png" alt="ロコ" loading="lazy">
		</div>
		<div class="loco-comment-balloon">
			Projectsは、チャットを片付ける場所というより、毎回同じ説明をしなくて済むようにする場所だと考えると分かりやすい。
		</div>
	</div>



<h2 class="wp-block-heading">通常チャットとの違い</h2>



<p>通常チャットは、単発の相談に向いている。</p>



<p>思いついたことを聞く。<br>文章を少し直す。<br>軽く壁打ちする。<br>調べたいことを聞く。</p>



<p>その場で終わるなら、通常チャットで十分だ。</p>



<p>逆に、通常チャットで扱い続けると面倒になるものがある。</p>



<p>たとえば、記事シリーズ。</p>



<p>第1弾で何を書いたのか。<br>第2弾で何を整理したのか。<br>第3弾では何を言ったのか。<br>次の記事でどこまで踏み込むのか。</p>



<p>これを毎回説明するのは手間になる。</p>



<p>Projectsに入れておけば、そのテーマのチャットや資料を同じ場所に置ける。</p>



<p>通常チャットが「その場の机」だとすると、Projectsは「資料を置いた作業部屋」に近い。</p>



<h2 class="wp-block-heading">GPTsとの違い</h2>



<p>GPTsとの違いも、少しややこしい。</p>



<p>私の感覚では、GPTsは決まった用途の入口だ。</p>



<p>たとえば、以下のようなものはGPTsに向いている。</p>



<ul class="wp-block-list">
<li>記事レビュー専用GPT</li>



<li>LINEスタンプ案を出すGPT</li>



<li>WordPress投稿前チェックGPT</li>



<li>企画整理専用GPT</li>
</ul>



<p>「この型で処理してほしい」<br>「この手順でレビューしてほしい」<br>「この出力形式で返してほしい」</p>



<p>こういう作業はGPTsが向いている。</p>



<p>一方で、Projectsはもう少し広い。</p>



<p>Projectsは、特定の作業手順というより、そのテーマ全体の文脈を置く場所だ。</p>



<p>たとえば「AI活用記事シリーズ」というProjectなら、そこでは記事レビューだけではなく、複数の作業が発生する。</p>



<p>次の記事テーマを考える。<br>過去記事とのつながりを見る。<br>公式情報を整理する。<br>アイキャッチ案を考える。<br>noteとの切り分けを考える。<br>やらない記事を判断する。</p>



<p>これは、ひとつのGPTsに閉じ込めるより、Projectとして扱う方が自然だ。</p>



<p>GPTsは「型」。<br>Projectsは「作業部屋」。</p>



<p>そう考えると、かなり分かりやすくなる。</p>



<h2 class="wp-block-heading">カスタム指示との違い</h2>



<p>カスタム指示は、ChatGPT全体に効かせる基本姿勢だ。</p>



<p>たとえば私の場合なら、以下のような方針を入れておきたい。</p>



<ul class="wp-block-list">
<li>ただ肯定しない</li>



<li>論点を整理する</li>



<li>実現性や保守性を見る</li>



<li>やらない判断も出す</li>



<li>最終判断は自分がする前提で、判断材料を出す</li>
</ul>



<p>これは、どのチャットでも効いてほしい基本姿勢になる。</p>



<p>一方で、Projectsに入れる指示は、もっとテーマ寄りだ。</p>



<p>ブログ運営Projectなら、ブログの方針。<br>LINEスタンプProjectなら、スタンプ制作の前提。<br>AI記事シリーズProjectなら、シリーズ全体の狙い。</p>



<p>つまり、こう分けるとよい。</p>



<p>カスタム指示は、自分全体の基本姿勢。<br>Projectsの指示は、そのテーマ専用の作業ルール。</p>



<p>なお、OpenAIの公式ヘルプでは、Projectの指示はそのProject内に適用され、グローバルなカスタム指示より優先されると説明されている。</p>



<p>だからこそ、Projectの指示には「そのテーマでだけ守ってほしいこと」を書くのがよい。</p>



<h2 class="wp-block-heading">Projectsに向いているもの</h2>



<p>Projectsに向いているのは、1回で終わらないテーマだ。</p>



<p>たとえば、以下のようなものが向いている。</p>



<ul class="wp-block-list">
<li>ブログ運営</li>



<li>記事シリーズ</li>



<li>LINEスタンプ制作</li>



<li>無料ツールの公開方針</li>



<li>副収入計画</li>



<li>長期の調査</li>



<li>継続的な学習</li>



<li>仕事の論点整理</li>



<li>個人開発の方針整理</li>
</ul>



<p>ポイントは、何度も同じ前提を使うかどうかだ。</p>



<p>一度聞いて終わるなら、通常チャットで十分。</p>



<p>でも、毎回同じ背景を説明しているなら、Projectsに分けた方がよい。</p>



<h2 class="wp-block-heading">Projectsに入れない方がいいもの</h2>



<p>逆に、何でもProjectsに入れればよいわけではない。</p>



<p>たとえば、以下のようなものは通常チャットで十分だ。</p>



<ul class="wp-block-list">
<li>一回だけの質問</li>



<li>軽い雑談</li>



<li>すぐ終わる文章修正</li>



<li>単発の調べもの</li>



<li>テーマ化するほどではない思いつき</li>
</ul>



<p>Projectsを増やしすぎると、今度はProjects自体が散らかる。</p>



<p>フォルダを増やしすぎるのと同じだ。</p>



<p>Projectsは便利だが、細かく分けすぎると管理対象が増える。</p>



<p>なので、私は「長く続くテーマ」だけProjectにするくらいでよいと思っている。</p>



	<div class="loco-comment loco-comment-right loco-comment-hint">
		<div class="loco-comment-image">
			<img decoding="async" src="https://lab.imeer.jp/wp-content/uploads/2026/05/319c037b116b468c3814717913348343-1.png" alt="ロコ" loading="lazy">
		</div>
		<div class="loco-comment-balloon">
			Projectを作るか迷ったら、「次回も同じ前提を使うか」で見ると判断しやすい。一回で終わる話なら、通常チャットの方が軽い。
		</div>
	</div>



<h2 class="wp-block-heading">私ならこう分ける</h2>



<p>私の使い方なら、ざっくりこう分ける。</p>



<p>ブログ運営はProjects。<br>AI記事シリーズもProjects。<br>LINEスタンプ工房の運営方針もProjects。<br>副収入計画もProjects。</p>



<p>一方で、単発のタイトル案や、ちょっとした文章修正は通常チャットで十分だ。</p>



<p>記事レビューのように、毎回同じ観点で見たいものはGPTsにする。</p>



<p>コードやファイルを実際に直す作業はCodex側に寄せる。</p>



<p>この分け方にしておくと、ChatGPT側で考えることと、Codex側で実装することが混ざりにくい。</p>



<p>ただし、この記事ではCodexの話は深掘りしない。</p>



<p>ここで大事なのは、Projectsを「ChatGPT内でテーマを継続して扱う場所」として見ることだ。</p>



<h2 class="wp-block-heading">IMEER LAB運営でのProjects例</h2>



<p>たとえば、IMEER LAB運営のProjectを作るなら、Projectの指示にはこう書く。</p>



<p><code>このProjectでは、IMEER LABのブログ運営、note展開、LINEスタンプ、GPTs活用、無料ツール導線を扱います。 具体的な実装作業ではなく、企画、導線、判断軸、優先順位、やらない判断を中心に整理してください。 記事や企画では、以下を重視してください。 - 技術者の作業メモ感を残す - 実体験と判断材料を入れる - 成功談に整えすぎない - 迷ったこと、やめたこと、判断を変えたことも価値として扱う - 個人運営で維持できるかを見る - 半年後にも意味が残るかを見る - ブログ、note、無料ツール、GPTsの導線につながるかを見る 実装詳細、Git操作、API設計、コード修正、テスト設計は別Projectに切り分けてください。</code></p>



<p>このように書いておくと、そのProject内では「これは運営方針の話」「これは開発室に切り分ける話」のように整理しやすくなる。</p>



<p>単なるフォルダではなく、Projectごとに判断軸を持たせるイメージだ。</p>



<h2 class="wp-block-heading">Projectsには何を書くべきか</h2>



<p>Projectsの指示には、細かい作業手順を詰め込みすぎない方がよい。</p>



<p>毎回変わる手順よりも、毎回変えたくない前提を書く。</p>



<p>たとえば、ブログ用Projectなら以下のような内容が向いている。</p>



<ul class="wp-block-list">
<li>誰に向けて書くか</li>



<li>どんな文体にするか</li>



<li>どんな表現を避けるか</li>



<li>どの記事シリーズとつながるか</li>



<li>どこまで技術的に踏み込むか</li>



<li>noteや無料ツールへの導線をどう扱うか</li>



<li>何をこのProjectでは扱わないか</li>
</ul>



<p>開発用Projectなら、以下のような内容が向いている。</p>



<ul class="wp-block-list">
<li>どのリポジトリを扱うか</li>



<li>優先する設計方針</li>



<li>テスト方針</li>



<li>触ってよい範囲</li>



<li>触らない方がよい範囲</li>



<li>判断に迷ったときの優先順位</li>
</ul>



<p>副収入計画なら、以下のような内容が向いている。</p>



<ul class="wp-block-list">
<li>何を優先するか</li>



<li>何をやらないか</li>



<li>収益化より先に整えるもの</li>



<li>無料公開するもの</li>



<li>有料化を検討するもの</li>



<li>続けられる作業量</li>
</ul>



<p>Projectsに置くべきなのは、毎回説明するのが面倒なものだ。</p>



<p>忘れられると話がずれるもの。<br>そのテーマでは常に守ってほしいもの。<br>判断に迷ったときに戻る基準。</p>



<p>そういうものを置いておくと、Projectsが作業部屋として機能しやすくなる。</p>



<h2 class="wp-block-heading">まとめ：続くテーマはProjectsに置く</h2>



<p>Projectsは、単なるフォルダではない。</p>



<p>もちろん、チャットを整理する場所としても使える。</p>



<p>でも、それだけでは少しもったいない。</p>



<p>Projectsは、長く続くテーマの前提、資料、指示、チャットをまとめておく作業部屋として使うと便利だ。</p>



<p>通常チャットは、その場の相談。<br>GPTsは、決まった用途の入口。<br>カスタム指示は、自分全体の基本姿勢。<br>Projectsは、テーマごとの作業部屋。</p>



<p>この分け方をしておくと、ChatGPTの使い方がかなり整理される。</p>



<p>特に、ブログ運営、記事シリーズ、個人開発、副収入計画のように、何度も同じテーマを扱う場合はProjectsが向いている。</p>



<p>フォルダとして使うだけではなく、そのテーマの作業部屋として使う。</p>



<p>Projectsは、そう考えた方がしっくりきた。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://lab.imeer.jp/chatgpt-projects-workspace/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>GPTsは何に向いているのか｜記憶ではなく「型」とActionsで考える</title>
		<link>https://lab.imeer.jp/gpts-value-template-actions-memory/</link>
					<comments>https://lab.imeer.jp/gpts-value-template-actions-memory/#respond</comments>
		
		<dc:creator><![CDATA[Nori]]></dc:creator>
		<pubDate>Thu, 21 May 2026 22:00:00 +0000</pubDate>
				<category><![CDATA[AI活用]]></category>
		<category><![CDATA[ChatGPT活用]]></category>
		<category><![CDATA[GPTs活用]]></category>
		<category><![CDATA[Actions]]></category>
		<category><![CDATA[ChatGPT]]></category>
		<category><![CDATA[Codex]]></category>
		<category><![CDATA[Knowledge]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[ブログ運営]]></category>
		<category><![CDATA[メモリ]]></category>
		<category><![CDATA[個人開発]]></category>
		<guid isPermaLink="false">https://lab.imeer.jp/?p=685</guid>

					<description><![CDATA[GPTsは便利そうに見える。 編集者GPT、校正GPT、画像生成GPT、WordPress整形GPT、note用GPT。目的ごとに分ければ、毎回同じ説明をしなくて済む。最初は、自分専用のAI担当者が少しずつ育っていくよう [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>GPTsは便利そうに見える。</p>



<p>編集者GPT、校正GPT、画像生成GPT、WordPress整形GPT、note用GPT。目的ごとに分ければ、毎回同じ説明をしなくて済む。最初は、自分専用のAI担当者が少しずつ育っていくようにも見える。</p>



<p>ただ、実際に使ってみると、そこは少し違った。</p>



<p>GPTsは、前回までを覚えて育つ相棒ではない。</p>



<p>OpenAI Help Centerでは、custom GPTsは現在メモリ非対応であり、過去セッションの文脈を保持しないと説明されている。ユーザー側で通常のChatGPTメモリをオンにしていても、custom GPTsの各interactionはステートレスで始まる。</p>



<p>つまり、GPTsに「前回の続きで」「前回決めた方針を踏まえて」と期待しすぎると苦しくなる。</p>



<p>では、GPTsに価値がないのかというと、そうではない。</p>



<p>GPTsの現時点での実感値としての価値は、記憶ではなく型の固定にある。毎回同じ役割、同じ初期条件、同じ出力フォーマット、同じ会話スターター、同じ目的の入口で始められることに意味がある。</p>



<p>この記事では、GPTsを「育つ相棒」ではなく「型化された入口」として考え直す。</p>



<h2 class="wp-block-heading">GPTsは便利だが、育つ相棒ではなかった</h2>



<p>GPTsは、特定の目的向けに設定したChatGPTである。</p>



<p>OpenAI Help Centerでは、GPTsはInstructions、Knowledge、Capabilities、Actionsなどを組み合わせて、目的に合ったChatGPTを作れるものとして説明されている。</p>



<p>Instructionsでは、役割、口調、目的、境界を設定できる。Knowledgeでは、参照資料をアップロードできる。Capabilitiesでは、画像生成やWeb検索などの機能を選べる。Actionsでは、外部APIと接続できる。</p>



<p>ここだけ見ると、GPTsはかなり強い。</p>



<p>ただし、重要な制約がある。custom GPTsはメモリ非対応であり、過去セッションの文脈を保持しない。各会話は基本的に新しく始まる。</p>



<p>そのため、GPTsは「前回までの内容を踏まえた長期プロジェクト管理」には向きにくい。</p>



<p>たとえば、記事シリーズで次のような使い方をしようとすると、だんだん重くなる。</p>



<ul class="wp-block-list">
<li>前回の記事で決めた方針を覚えていてほしい</li>



<li>記事シリーズ全体の進捗を管理してほしい</li>



<li>前回やめた判断を次回も自動で引き継いでほしい</li>



<li>途中で変えた編集方針を覚え続けてほしい</li>
</ul>



<p>こういう用途は、GPTsだけで抱えるより、ProjectsやCodex側のファイル管理に寄せた方がよい。</p>



<p>ここを誤解すると、GPTsに期待しすぎる。</p>



<p>GPTsを否定するものではない。ただし、記憶で育つ道具として見るより、毎回同じ型で始める道具として見た方が安定する。</p>



<h2 class="wp-block-heading">GPTsで困ったこと</h2>



<p>GPTsで困りやすいのは、前回までの方針を自動で引き継げないことだ。</p>



<p>たとえば、ブログ記事制作で「このシリーズでは第1弾で機能比較、第2弾でPersonalityとメモリ、第3弾でGPTs運用を扱う」と決めたとする。</p>



<p>通常のChatGPTやProjectsの文脈がある場所なら、その流れを会話の中で扱いやすい。しかしcustom GPTsでは、過去セッションの文脈を保持しない。次に開いたときは、基本的に新しい会話として始まる。</p>



<p>もちろん、Knowledgeに資料やルールを入れれば参照はできる。</p>



<p>しかし、Knowledgeは手動で追加・更新する必要がある。記事シリーズの進捗や最新判断を、毎回Knowledgeへ反映し続けるのは個人運営では重い。</p>



<p>固定資料には向いている。</p>



<ul class="wp-block-list">
<li>ブログの基本方針</li>



<li>文体ルール</li>



<li>固定のチェックリスト</li>



<li>あまり変わらない仕様メモ</li>



<li>画像生成時の基本条件</li>
</ul>



<p>一方で、更新頻度が高い情報には向きにくい。</p>



<ul class="wp-block-list">
<li>記事シリーズの進捗</li>



<li>前回の判断変更</li>



<li>今回だけの編集方針</li>



<li>公開前の残タスク</li>



<li>実作業中に変わるメモ</li>
</ul>



<p>こうした情報は、Projectsに置くか、Codexで管理しているファイルに残す方が扱いやすい。</p>



<p>Knowledgeは「固定資料」や「あまり変わらない前提」に向く。日々変わる運用状況や進捗管理を入れ続ける場所としては、少し重い。</p>



<h2 class="wp-block-heading">ファイルを直す作業はCodexに寄せた方がよさそう</h2>



<p>GPTsを編集者や校正役として使うことはできる。</p>



<p>ただ、記事ファイルを扱う作業では、Codexの方が運用に乗りやすい場面がある。</p>



<p>たとえば、誤字脱字、表記ゆれ、Markdown整形、WordPress用整形、一括修正のような作業である。</p>



<p>Codexはファイル単位で扱える。複数ファイルを読み、既存ナレッジとの整合を確認し、差分を見ながら修正できる。Markdownファイルとして記事を管理しているなら、修正前後の差分を確認しやすい。</p>



<p>これは、GPTsやChatGPTが不要という意味ではない。</p>



<p>方向性レビューや読者視点の違和感チェックは、GPTsやChatGPTにも価値がある。記事の主張が伝わるか、読者がどこで迷うか、タイトルと本文のズレがないかを見るなら、会話型のレビューは使いやすい。</p>



<p>ただし、ファイルを直す作業、整形する作業、複数箇所を一括で揃える作業は、Codexに寄せた方が安定する可能性がある。</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>作業</th><th>向いているもの</th></tr></thead><tbody><tr><td>誤字脱字、表記ゆれ、Markdown整形</td><td>Codex</td></tr><tr><td>記事の方向性レビュー</td><td>GPTs / ChatGPT</td></tr><tr><td>読者視点の違和感チェック</td><td>GPTs / ChatGPT</td></tr><tr><td>LINEスタンプ画像生成の型化</td><td>GPTs</td></tr><tr><td>記事ファイルの修正・差分確認</td><td>Codex</td></tr></tbody></table></figure>



<p>ここも役割分担で考える。</p>



<p>GPTsはレビューの入口として使える。Codexはファイルを直す作業に向く。どちらか一方に寄せるより、作業の種類で分けた方がよい。</p>



<h2 class="wp-block-heading">ではGPTsの価値はどこにあるのか</h2>



<p>GPTsの価値は、記憶ではなく型化された入口にある。</p>



<p>毎回「あなたは○○です」と言わなくてよい。目的別の入口を作れる。出力フォーマットを固定しやすい。会話スターターを用意できる。初心者や未来の自分が、何を頼めばよいか迷いにくい。</p>



<p>たとえば、次のような作業には向いている。</p>



<ul class="wp-block-list">
<li>画像生成の条件を毎回そろえる</li>



<li>特定用途のプロンプトを作る</li>



<li>決まった形式でレビューする</li>



<li>初心者向けに手順案内を始める</li>



<li>決まった会話スターターから作業を始める</li>
</ul>



<p>GPTsは「成長して覚えてくれる担当者」ではなく、「毎回同じ初期条件で始められる入口」と見る。</p>



<p>この見方にすると、GPTsを増やす基準も変わる。</p>



<p>長期記憶が必要なものはGPTsに向かない。初期条件を固定したいもの、出力フォーマットを安定させたいもの、同じ目的で繰り返し始めたいものはGPTsに向く。</p>



	<div class="loco-comment loco-comment-right loco-comment-hint">
		<div class="loco-comment-image">
			<img decoding="async" src="https://lab.imeer.jp/wp-content/uploads/2026/05/319c037b116b468c3814717913348343-1.png" alt="ロコ" loading="lazy">
		</div>
		<div class="loco-comment-balloon">
			GPTsは覚えてくれるから便利、ではなく、毎回同じ場所から始められるから便利。ここを間違えると、期待値が少しずつズレる。
		</div>
	</div>



<h2 class="wp-block-heading">LINEスタンプ画像生成ではGPTsが効いた</h2>



<p>IMEER LABでGPTsが効いた例として、LINEスタンプ画像生成がある。</p>



<p>画像生成では、毎回条件を書くのが地味に重い。</p>



<ul class="wp-block-list">
<li>LINEスタンプ向けの画像であること</li>



<li>370×320を意識すること</li>



<li>余白を確保すること</li>



<li>背景を扱いやすくすること</li>



<li>文字を入れるか、入れないか</li>



<li>キャラクター設定を崩さないこと</li>



<li>ロコ太などのキャラクター前提を踏まえること</li>
</ul>



<p>通常のChatGPTで毎回説明してもよい。だが、毎回同じ初期条件を書くのは面倒である。</p>



<p>GPTsにしておくと、「LINEスタンプ用画像生成の入口」として始められる。最初から、LINEスタンプ向けの画像生成、キャラクター設定、背景、余白、サイズ、文字の扱いを固定しやすい。</p>



<p>ここで効いているのは、長期記憶ではない。</p>



<p>前回の作業を覚えてくれることではなく、毎回同じ型で始められることが効いている。画像生成プロンプトの型が安定し、相談の立ち上がりが速くなる。</p>



<p>もちろん、これも万能ではない。</p>



<p>キャラクターの一貫性、背景の扱い、文字の崩れ、審査前の確認は別途見る必要がある。GPTsにしたから自動で安定するわけではない。</p>



<p>ただ、LINEスタンプ画像生成のように、初期条件が毎回似ている作業では、GPTsの価値が出やすい。</p>



<h2 class="wp-block-heading">Actionsには別軸の可能性がある</h2>



<p>GPTsには、Actionsという仕組みもある。</p>



<p>OpenAI Help Centerでは、ActionsはGPTを外部APIへ接続する仕組みとして説明されている。設定には、接続したいサービスのAPI情報、認証情報、OpenAPI schemaが必要になる。</p>



<p>schemaでは、GPTがどのサーバーを呼び出せるか、どのエンドポイントを使えるか、どのパラメータを受け取るかを定義する。認証方式には、None、API key、OAuthなどがある。Public GPTsでActionsを使う場合、Privacy Policy URLが必要になる場合もある。ユーザーがAction実行を承認する場合もある。</p>



<p>Actionsは、単なる役割固定や型の固定とは別軸の価値である。</p>



<p>もし使いこなせれば、GPTsは会話の入口だけでなく、外部処理の入口にもなり得る。</p>



<p>IMEER LABの文脈では、たとえば次のような可能性がある。</p>



<ul class="wp-block-list">
<li>WordPressと接続して、記事情報を取得する</li>



<li>Google Sheetsと接続して、管理表を参照する</li>



<li>独自DBと接続して、制作ログを扱う</li>



<li>自作の画像処理APIと接続する</li>



<li>LINEスタンプ工房と連携する</li>



<li>ライセンス管理APIと接続する</li>



<li>e-Gov APIや法令検索APIと接続する</li>
</ul>



<p>ただし、ここは現時点では評価保留である。</p>



<p>IMEER LABでは、Actionsを実運用として評価できていない。可能性は大きいが、実際に安定して使えるか、保守できるか、個人運営の負荷に見合うかは別問題である。</p>



<p>Actionsを入れると、API設計、認証、セキュリティ、エラー処理、保守、権限管理を考える必要がある。</p>



<p>個人運営では、「作れるか」だけでなく「保守できるか」を見る必要がある。Actionsは強い可能性を持つが、気軽に増やすものではない。</p>



<h2 class="wp-block-heading">GPTsの機能・要素を整理する</h2>



<p>GPTsには複数の構成要素がある。どれも便利だが、価値と注意点は違う。</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>GPTsの機能・要素</th><th>価値</th><th>注意点</th></tr></thead><tbody><tr><td>Instructions</td><td>役割・口調・判断観点を固定できる</td><td>長期記憶ではない</td></tr><tr><td>Conversation starters</td><td>使い始めの導線を作れる</td><td>複雑な作業管理には弱い</td></tr><tr><td>Knowledge</td><td>参照資料を持たせられる</td><td>手動更新が必要</td></tr><tr><td>Capabilities</td><td>画像生成、Web検索などを使える</td><td>目的に合わせて絞らないと散る</td></tr><tr><td>Actions</td><td>外部APIと接続できる</td><td>API設計、認証、保守、権限管理が必要</td></tr></tbody></table></figure>



<p>GPTsを作るときは、この中のどれが必要なのかを先に見る。</p>



<p>単に「便利そうだからGPTsにする」のではなく、Instructionsを固定したいのか、Knowledgeを参照したいのか、Conversation startersで入口を作りたいのか、Actionsで外部APIとつなぎたいのかを分ける。</p>



<h2 class="wp-block-heading">GPTsに向いているもの・向いていないもの</h2>



<p>GPTsに向いているのは、型として残る作業である。</p>



<h3 class="wp-block-heading">GPTsに向いているもの</h3>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>向いているもの</th><th>理由</th></tr></thead><tbody><tr><td>画像生成の型化</td><td>毎回同じ条件から始められる</td></tr><tr><td>LINEスタンプ用プロンプト生成</td><td>サイズ、背景、文字条件を固定できる</td></tr><tr><td>目的別の相談入口</td><td>毎回役割説明をしなくてよい</td></tr><tr><td>初心者向け手順案内</td><td>会話スターターと固定指示が効く</td></tr><tr><td>定型出力が必要な作業</td><td>フォーマットを固定しやすい</td></tr><tr><td>外部API連携の入口</td><td>Actionsで自作APIや外部サービスと接続できる可能性がある</td></tr></tbody></table></figure>



<p>一方で、GPTsに向いていないものもある。</p>



<h3 class="wp-block-heading">GPTsに向いていないもの</h3>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>向いていないもの</th><th>理由</th></tr></thead><tbody><tr><td>長期プロジェクト管理</td><td>前回までの文脈を保持しない</td></tr><tr><td>記事シリーズの進捗管理</td><td>ProjectsやCodex側のファイル管理の方が向く</td></tr><tr><td>ナレッジを頻繁に更新する作業</td><td>手動更新が運用コストになる</td></tr><tr><td>ファイル単位の校正・整形</td><td>Codexの方が向くことがある</td></tr><tr><td>育つ編集者のような使い方</td><td>メモリがないため自動では育たない</td></tr><tr><td>権限管理が複雑な外部連携</td><td>Actions設計・認証・保守の負荷が高くなる</td></tr></tbody></table></figure>



<h2 class="wp-block-heading">IMEER LABではどう使うか</h2>



<p>IMEER LABでは、GPTsを長期記憶の場所として使わない。</p>



<p>使うなら、型として残るものに絞る。</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><th>用途</th><th>向いているもの</th><th>理由</th></tr></thead><tbody><tr><td>LINEスタンプ画像生成</td><td>GPTs</td><td>初期条件と出力フォーマットを固定できる</td></tr><tr><td>記事シリーズ管理</td><td>Projects</td><td>長期テーマの文脈をまとめられる</td></tr><tr><td>記事ファイルの作成・校正・整形</td><td>Codex</td><td>ファイル単位で扱え、差分確認しやすい</td></tr><tr><td>企画の壁打ち</td><td>ChatGPT / GPTs</td><td>その場の相談や目的別入口として使える</td></tr><tr><td>編集方針の保存</td><td>カスタム指示 / ナレッジ / Projects</td><td>全体方針やシリーズ文脈として持たせる</td></tr><tr><td>外部API連携</td><td>GPTs Actions / 独自API</td><td>可能性は大きいが、まだ実運用評価は保留</td></tr></tbody></table></figure>



<p>LINEスタンプ画像生成GPTsは、残す価値がある。毎回の初期条件が似ていて、型として固定する意味があるためである。</p>



<p>一方で、校正やWordPress整形はCodexに寄せる可能性がある。記事ファイルを直接扱い、差分を確認できる方が、運用として安定しやすい。</p>



<p>記事シリーズ管理はProjectsに置く。前回までの方針、後続記事、内部リンク、残タスクのような文脈は、GPTsよりProjectsやファイル管理に向いている。</p>



<p>Actionsは大きな可能性がある。ただし、まだ実運用評価は保留である。LINEスタンプ工房やWordPress、自作APIとつながる可能性はあるが、保守と権限管理まで含めて判断したい。</p>



<h2 class="wp-block-heading">まとめ</h2>



<p>GPTsを作るかどうかは、「この作業は次回も同じ型で始めたいか」で判断する。</p>



<p>GPTsは、記憶で育つ道具ではない。</p>



<p>custom GPTsは現在メモリ非対応であり、過去セッションの文脈を保持しない。各会話は基本的に新しく始まる。そのため、長期プロジェクト管理や、記事シリーズの進捗管理をGPTsに任せると苦しくなる。</p>



<p>GPTsの価値は、「前回までを覚えること」ではなく「毎回同じ型で始められること」にある。</p>



<p>毎回同じ役割、同じ初期条件、同じ出力フォーマット、同じ会話スターター、同じ目的の入口で始めたい作業には向いている。LINEスタンプ画像生成のように、条件を固定して始めたい作業では価値が出やすい。</p>



<p>Actionsを使えば、GPTsは外部API連携の入口にもなり得る。</p>



<p>ただし、ActionsはまだIMEER LABでは実運用評価できていない。可能性は大きいが、API設計、認証、セキュリティ、保守、エラー処理、権限管理まで含めて判断する必要がある。</p>



<p>長期文脈はProjects。ファイル処理はCodex。型化された入口はGPTs。</p>



<p>GPTsは増やすより、型として残るものだけ作る。このくらいの距離感で使う方が、個人運営では続けやすい。</p>



<h2 class="wp-block-heading">関連記事</h2>



<ul class="wp-block-list">
<li>ChatGPT・GPTs・Projects・Codexの違い｜個人開発とブログ運営での使い分け</li>



<li>ChatGPTに「性格」を持たせるとは何か｜Personality・カスタム指示・メモリ・GPTsの違い</li>
</ul>



<h2 class="wp-block-heading">参考にした公式情報</h2>



<ul class="wp-block-list">
<li><a href="https://help.openai.com/en/articles/8983148-does-memory-function-with-gpts">Does memory function with GPTs? | OpenAI Help Center</a></li>



<li><a href="https://help.openai.com/en/articles/8554407-gpts-faq">GPTs in ChatGPT | OpenAI Help Center</a></li>



<li><a href="https://help.openai.com/en/articles/8554397-creating-and-editing-gpts">Creating and editing GPTs | OpenAI Help Center</a></li>



<li><a href="https://help.openai.com/en/articles/9442513-configuring-actions-in-gpts">Configuring actions in GPTs | OpenAI Help Center</a></li>
</ul>
]]></content:encoded>
					
					<wfw:commentRss>https://lab.imeer.jp/gpts-value-template-actions-memory/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【実務改善記録】Excelから始めた不動産業者向け顧客管理システムの4次開発</title>
		<link>https://lab.imeer.jp/real-estate-crm-excel-access/</link>
					<comments>https://lab.imeer.jp/real-estate-crm-excel-access/#respond</comments>
		
		<dc:creator><![CDATA[Nori]]></dc:creator>
		<pubDate>Thu, 21 May 2026 15:20:04 +0000</pubDate>
				<category><![CDATA[業務改善ログ]]></category>
		<category><![CDATA[Access]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[クラウドソーシング]]></category>
		<category><![CDATA[業務改善]]></category>
		<guid isPermaLink="false">https://lab.imeer.jp/?p=699</guid>

					<description><![CDATA[2022年、クラウドソーシング経由で、不動産業者向けの顧客管理ツール開発を担当しました。 当時、私は不動産業務についてほとんど知識がありませんでしたが、実際にお客様とWeb会議を 重ねる中で、これまでの知見も生かし、「必 [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>2022年、クラウドソーシング経由で、不動産業者向けの顧客管理ツール開発を担当しました。</p>



<p>当時、私は不動産業務についてほとんど知識がありませんでしたが、実際にお客様とWeb会議を</p>



<p>重ねる中で、これまでの知見も生かし、「必要とされる機能を利用しやすい形で」を目指して</p>



<p>お客様と共にシステム化を進めました。</p>



<p>結果として、この案件は1次開発から4次開発まで続き、段階的に改善を重ねる形になりました。</p>



<p>今回は、その流れを振り返ってみます。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">なぜExcelから始めたのか</h2>



<p>最初に検討したのは、「どこまでシステム化するべきか」でした。</p>



<p>一般的には、最初からWebシステムやクラウドサービスを想像しがちです。</p>



<p>ただ、実際には、</p>



<ul class="wp-block-list">
<li>利用人数がそこまで多くない</li>



<li>Excel運用に慣れている</li>



<li>ITリテラシーに差がある</li>



<li>まず業務整理が必要</li>
</ul>



<p>という状況でした。</p>



<p>そのため、最初から大きなシステムを作るのではなく、</p>



<p>「今の業務を壊さずに改善する」</p>



<p>ことを優先し、Excelベースで進めることにしました。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">1次開発：まずは業務を理解する</h2>



<p>最初の開発では、</p>



<ul class="wp-block-list">
<li>不動産業者をマスタ管理</li>



<li>業者ごとに案内した物件情報を管理</li>



<li>PDF資料を添付保存</li>
</ul>



<p>といった基本機能を実装しました。</p>



<p>この時点では、不動産業界特有の業務知識がほとんどありませんでした。</p>



<p>そのため、実装よりも先に、</p>



<ul class="wp-block-list">
<li>どんな流れで業務が進むのか</li>



<li>誰が何を見ているのか</li>



<li>どこで困っているのか</li>
</ul>



<p>をWeb会議で丁寧に確認することを重視しました。</p>



<p>実際、小規模業務改善では「技術」より「業務理解」の方が重要だと感じています。</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="536" src="https://lab.imeer.jp/wp-content/uploads/2026/05/image-4-1024x536.png" alt="" class="wp-image-700" srcset="https://lab.imeer.jp/wp-content/uploads/2026/05/image-4-1024x536.png 1024w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-4-300x157.png 300w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-4-768x402.png 768w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-4.png 1195w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">シンプルに必要な項目を管理。別シートで登録データを一覧管理しています。</figcaption></figure>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">2次開発：部署ごとの運用と集計機能</h2>



<p>1次開発したツールは、部署ごとに配布して利用する形になりました。</p>



<p>ただ、運用が始まると、</p>



<p>「部署ごとのデータをまとめたい」</p>



<p>という要望が出てきました。</p>



<p>そこで2次開発では、</p>



<ul class="wp-block-list">
<li>部署ごとのデータをマージする機能</li>



<li>成績グラフの自動生成</li>



<li>VPSサーバーによる共有環境</li>
</ul>



<p>を追加しました。</p>



<p>特に印象的だったのは、「分析したい」というニーズが徐々に強くなっていったことです。</p>



<p>単に記録するだけでなく、</p>



<ul class="wp-block-list">
<li>どの部署が成果を出しているか</li>



<li>どの業者との取引が多いか</li>
</ul>



<p>を見たいという要望が増えていきました。</p>



<p>現場で実際に使われ始めると、必要な機能が具体化していくのを感じました。</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="452" src="https://lab.imeer.jp/wp-content/uploads/2026/05/image-5-1024x452.png" alt="" class="wp-image-701" srcset="https://lab.imeer.jp/wp-content/uploads/2026/05/image-5-1024x452.png 1024w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-5-300x132.png 300w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-5-768x339.png 768w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-5.png 1442w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">当時、取込みデータからのグラフ自動生成は初挑戦でした。</figcaption></figure>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">3次開発：Accessへの移行</h2>



<p>運用が進むにつれて、管理する業者数も増えていきました。</p>



<p>その結果、Excelだけでは扱いづらくなってきたため、データ管理部分をAccessへ移行しました。</p>



<p>ただし、入力画面はExcelを維持しました。</p>



<p>これは、</p>



<p>「利用者の使用感を変えない」</p>



<p>ためです。</p>



<p>もし入力方法まで大きく変えてしまうと、現場負荷が増えてしまいます。</p>



<p>小規模業務改善では、</p>



<p>「技術的に正しいか」</p>



<p>だけでなく、</p>



<p>「現場で使い続けられるか」</p>



<p>が非常に重要だと感じています。</p>



<p>また、2次開発で追加したグラフ機能も強化し、さまざまな軸で実績を確認できるよう改善しました。</p>



<p>ちなみにですが、Accessのライセンスは不要になる点も、この形態とした理由の一つです。</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="729" src="https://lab.imeer.jp/wp-content/uploads/2026/05/image-6-1024x729.jpg" alt="" class="wp-image-702" srcset="https://lab.imeer.jp/wp-content/uploads/2026/05/image-6-1024x729.jpg 1024w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-6-300x213.jpg 300w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-6-768x546.jpg 768w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-6.jpg 1487w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">メニューが増えて少しずつシステム感が出てきました。Line送信機能も実装。</figcaption></figure>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">4次開発：OCRへの挑戦</h2>



<p>4次開発では、新たにPDFで送られてくる物件情報の電子化に挑戦しました。</p>



<p>Pythonを利用し、OCR処理によって情報を読み取る仕組みを作成しました。</p>



<p>ただ、実際に試してみると、100%正確に読み取ることはできませんでした。</p>



<p>帳票形式の違いや文字品質の問題もあり、完全自動化には限界がありました。</p>



<p>そこで最終的には、</p>



<ul class="wp-block-list">
<li>OCR結果を保存</li>



<li>元画像も保存</li>



<li>目視確認しやすいUIを用意</li>



<li>修正しやすい形にする</li>
</ul>



<p>という方向へ切り替えました。</p>



<p>「完全自動化」ではなく、</p>



<p>「確認作業を減らす」</p>



<p>方向へ落とし込んだ形です。</p>



<p>今振り返っても、この判断は間違っていなかったと思っています。</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="559" src="https://lab.imeer.jp/wp-content/uploads/2026/05/image-6-1-1024x559.jpg" alt="" class="wp-image-703" srcset="https://lab.imeer.jp/wp-content/uploads/2026/05/image-6-1-1024x559.jpg 1024w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-6-1-300x164.jpg 300w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-6-1-768x419.jpg 768w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-6-1-1536x839.jpg 1536w, https://lab.imeer.jp/wp-content/uploads/2026/05/image-6-1.jpg 1906w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">OCRで読み込んだ結果を元にした登録画面。見切れていますが、さらに右側にPDFの画像がそのまま張り付けてあります。</figcaption></figure>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">小規模業務改善で大事だと感じたこと</h2>



<p>この案件を通して感じたのは、</p>



<p>「最初から完璧を目指さない」</p>



<p>ことの重要性でした。</p>



<p>特に小規模事業では、</p>



<ul class="wp-block-list">
<li>現場に合うか</li>



<li>続けられるか</li>



<li>壊れないか</li>



<li>修正しやすいか</li>
</ul>



<p>の方が重要になる場面が多いです。</p>



<p>最初から大規模システムを作るのではなく、</p>



<ul class="wp-block-list">
<li>Excelから始める</li>



<li>必要に応じて拡張する</li>



<li>運用しながら改善する</li>
</ul>



<p>という進め方は、今でも有効だと感じています。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading">おわりに</h2>



<p>最近はAIや自動化の話題も増えていますが、</p>



<p>実際の現場では、</p>



<p>「どこまで自動化するか」</p>



<p>より、</p>



<p>「どうすれば現場で使い続けられるか」</p>



<p>の方が重要になることも多いです。</p>



<p>この案件は、自分にとっても「業務改善とは何か」を考えるきっかけになった案件でした。</p>



<p>今後も、現場運用を壊さない形の改善を意識していきたいと思っています。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://lab.imeer.jp/real-estate-crm-excel-access/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
