<?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>正割 &#8211; biz-tactics</title>
	<atom:link href="https://mashukabu.com/tag/%E6%AD%A3%E5%89%B2/feed/" rel="self" type="application/rss+xml" />
	<link>https://mashukabu.com</link>
	<description></description>
	<lastBuildDate>Thu, 04 Jun 2026 14:16:00 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0.3</generator>

<image>
	<url>https://mashukabu.com/wp-content/uploads/2022/04/cropped-site-icon-32x32.png</url>
	<title>正割 &#8211; biz-tactics</title>
	<link>https://mashukabu.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>スプレッドシートのIMSEC関数の使い方｜複素数の正割（セカント）を一発で計算</title>
		<link>https://mashukabu.com/spreadsheet-imsec-function/</link>
					<comments>https://mashukabu.com/spreadsheet-imsec-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Wed, 29 Apr 2026 11:24:28 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[IMSEC]]></category>
		<category><![CDATA[エンジニアリング関数]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[正割]]></category>
		<category><![CDATA[複素数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=6348</guid>

					<description><![CDATA[GoogleスプレッドシートのIMSEC関数の使い方を解説。複素数（a+bi）の正割（セカント）を一発で求める基本構文、虚数単位i/jの扱い、COMPLEX関数やIMCOSとの連携、極が近いときの数値挙動、信号処理・電気工学・複素解析の学習での実務活用例、よくあるエラー対処法まで実例付きで紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「スプレッドシートで複素数のセカント（正割）を計算したいけど、cos(a+bi) を展開してから逆数を取るのは面倒&#8230;」</p>



<p class="wp-block-paragraph">スプレッドシートで複素関数を扱っていると、cos(z) の逆数である正割 sec(z) が必要になる場面がありますよね。複素数のコサインを実部と虚部に分解し、最後に逆数を取って再び複素数の形に戻す&#8230;という流れを毎回手作業でやるのはちょっと大変です。</p>



<p class="wp-block-paragraph">そんなときに頼りになるのがGoogleスプレッドシートのIMSEC関数です。複素数を渡すだけでセカント（1/cos）を一発で返してくれるので、複素三角関数を使った数式が一気にすっきりしますよ。</p>



<p class="wp-block-paragraph">ExcelのIMSEC関数と完全互換なので、Excelファイルとやり取りする現場でも安心ですね。COMPLEX関数で作った複素数や、IMSUM・IMPRODUCTの演算結果からも、そのままセカントを計算できます。</p>



<p class="wp-block-paragraph">この記事では、スプレッドシートのIMSEC関数の基本構文と実務での活用例を解説します。IMCOS関数との関係や、極（cos(z)=0）に近いときの数値挙動、よくあるエラーと対処法もしっかり紹介していきますよ。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-1" checked><label class="toc-title" for="toc-checkbox-1">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">スプレッドシートのIMSEC関数とは？</a></li><li><a href="#toc2" tabindex="0">IMSEC関数の書き方（構文と引数）</a><ol><li><a href="#toc3" tabindex="0">基本構文</a></li><li><a href="#toc4" tabindex="0">引数の詳細</a></li></ol></li><li><a href="#toc5" tabindex="0">スプレッドシートのIMSEC関数の基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">文字列で複素数を直接指定する</a></li><li><a href="#toc7" tabindex="0">セル参照で複素数を指定する</a></li><li><a href="#toc8" tabindex="0">COMPLEX関数と組み合わせる</a></li><li><a href="#toc9" tabindex="0">IMCOS関数の逆数として書き換える</a></li><li><a href="#toc10" tabindex="0">度数からの変換と組み合わせる</a></li><li><a href="#toc11" tabindex="0">ARRAYFORMULAで複数行を一括処理する</a></li></ol></li><li><a href="#toc12" tabindex="0">IMSEC関数の実務活用例</a><ol><li><a href="#toc13" tabindex="0">活用例1: IMCOSとの関係を検算する</a></li><li><a href="#toc14" tabindex="0">活用例2: 複素三角関数テーブルを作る</a></li><li><a href="#toc15" tabindex="0">活用例3: 信号処理のフィルタ伝達関数で使う</a></li><li><a href="#toc16" tabindex="0">活用例4: 複素関数の値を可視化するシートを作る</a></li><li><a href="#toc17" tabindex="0">活用例5: 数値が大きくなる「極」の検出</a></li></ol></li><li><a href="#toc18" tabindex="0">IMSEC関数とCOMPLEX関数群の関係</a></li><li><a href="#toc19" tabindex="0">IMSEC関数のよくあるエラーと対処法</a><ol><li><a href="#toc20" tabindex="0">#NUM! エラー（複素数の形式エラー）</a></li><li><a href="#toc21" tabindex="0">#VALUE! エラー（引数の型エラー）</a></li><li><a href="#toc22" tabindex="0">結果が極端な値になる（極の近傍）</a></li><li><a href="#toc23" tabindex="0">結果の符号が想定と違う</a></li><li><a href="#toc24" tabindex="0">IFERRORでまとめてエラーを吸収する</a></li></ol></li><li><a href="#toc25" tabindex="0">IMSEC関数とExcelの互換性</a></li><li><a href="#toc26" tabindex="0">複素数関連の関数一覧</a></li><li><a href="#toc27" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">スプレッドシートのIMSEC関数とは？</span></h2>



<p class="wp-block-paragraph">GoogleスプレッドシートのIMSEC関数（イマジナリー・セカント関数）は、複素数の正割（セカント）を返す関数です。エンジニアリング関数（電気・物理・工学系の計算で使う関数群）のひとつに分類されますよ。</p>



<p class="wp-block-paragraph">読み方は「イマジナリー・セカント」または「アイエム・セック」で、英語の「imaginary number（虚数）」の「secant（正割）」に由来します。複素数「a+bi」に対して、sec(a+bi) = 1/cos(a+bi) を返してくれるのが役割ですね。</p>



<p class="wp-block-paragraph">そもそも複素数の正割とは、実数の正割（sec(x) = 1/cos(x)）を複素数全体に拡張したものです。実部と虚部に分解した定義式は次のようになります。</p>



<pre class="wp-block-code"><code>cos(a+bi) = cos(a)cosh(b) − i sin(a)sinh(b)
sec(a+bi) = 1 / cos(a+bi)</code></pre>



<p class="wp-block-paragraph">cos(a+bi) を求めてから逆数を取るというシンプルな構造ですね。実部だけの複素数（虚部0）を渡すと、通常の sec(a) と同じ結果になりますよ。</p>



<figure class="wp-block-table"><table><thead><tr><th>複素数（z）</th><th>IMSEC(z)の結果（概算）</th><th>備考</th></tr></thead><tbody><tr><td>0+0i</td><td>1</td><td>sec(0) = 1/cos(0) = 1</td></tr><tr><td>1+0i</td><td>約 1.8508</td><td>sec(1ラジアン) ≈ 1.8508</td></tr><tr><td>1+1i</td><td>約 0.4983+0.5910i</td><td>cos(1+i)の逆数</td></tr><tr><td>0+1i</td><td>約 0.6481</td><td>sech(1) と同値</td></tr><tr><td>2+3i</td><td>約 -0.0416+0.0906i</td><td>cos(2+3i) の逆数</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">IMSEC関数を使えば、この表の右側にある「複素数のセカント」をサクッと取り出せます。Excelとの互換性も完璧で、Excel 2013以降のすべてのバージョンに対応していますよ。</p>



<p class="wp-block-paragraph">複素数の正割は、信号処理のフィルタ伝達関数・電気工学の交流回路解析・複素解析の学習教材・特殊関数の評価など、複素三角関数が必要な場面で活躍する基礎パーツですね。</p>



<h2 class="wp-block-heading"><span id="toc2">IMSEC関数の書き方（構文と引数）</span></h2>



<h3 class="wp-block-heading"><span id="toc3">基本構文</span></h3>



<pre class="wp-block-code"><code>=IMSEC(複素数)</code></pre>



<p class="wp-block-paragraph">引数は1つだけで、必須です。</p>



<h3 class="wp-block-heading"><span id="toc4">引数の詳細</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/任意</th><th>説明</th></tr></thead><tbody><tr><td>複素数（inumber）</td><td>必須</td><td>正割を求めたい複素数。文字列またはセル参照で指定する</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数には「&#8221;2+3i&#8221;」や「&#8221;2+3j&#8221;」のような複素数文字列を直接渡せます。COMPLEX関数（実数と虚数から複素数を作成する関数）の結果や、複素数が入ったセルの参照も指定できますよ。</p>



<p class="wp-block-paragraph">虚数単位は小文字の「i」または「j」のどちらでも受け付けます。数学では「i」、電気工学では「j」が使われる慣習ですね。IMSEC関数はどちらでも同じように動作してくれます。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>戻り値は元の入力と同じ虚数単位で返されます。「1+1i」を渡せば「i」付きで、「1+1j」を渡せば「j」付きで返るので、表記の統一性も保たれますよ。</p></blockquote>



<p class="wp-block-paragraph">実部・虚部の単位はラジアンです。度数（°）で角度を持っている場合は、RADIANS関数で先にラジアンに変換しておきましょう。</p>



<h2 class="wp-block-heading"><span id="toc5">スプレッドシートのIMSEC関数の基本的な使い方</span></h2>



<h3 class="wp-block-heading"><span id="toc6">文字列で複素数を直接指定する</span></h3>



<p class="wp-block-paragraph">複素数文字列をそのまま引数に渡してみましょう。</p>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/03/spreadsheet-sumif-function_01_data_sample-table.png" alt="01 data sample table" /></figure>



<pre class="wp-block-code"><code>=IMSEC(&quot;1+1i&quot;)</code></pre>



<p class="wp-block-paragraph">!<a href="https://mashukabu.com/_images/spreadsheet-imsec-function/02_formula_imsec-basic.png/">_images/spreadsheet-imsec-function/02_formula_imsec-basic.png</a></p>



<p class="wp-block-paragraph">結果は「0.4983370305&#8230;+0.5910838417&#8230;i」になります。手計算で確認すると cos(1+i) = cos(1)cosh(1) − i sin(1)sinh(1) ≈ 0.8337 − 0.9889i で、その逆数を取ると約 0.4983 + 0.5910i なので、計算が合っていますね。</p>



<p class="wp-block-paragraph">実部だけの複素数（虚部0）を渡すと、通常のセカントと同じ結果になります。</p>



<pre class="wp-block-code"><code>=IMSEC(&quot;1+0i&quot;)</code></pre>



<p class="wp-block-paragraph">結果は約「1.8508」です。sec(1ラジアン) = 1/cos(1) ≈ 1/0.5403 ≈ 1.8508 という基本的な値が返ってきますね。</p>



<p class="wp-block-paragraph">虚部だけの純虚数を渡すと、双曲線セカント（sech）と同じ値になります。</p>



<pre class="wp-block-code"><code>=IMSEC(&quot;0+1i&quot;)</code></pre>



<p class="wp-block-paragraph">結果は約「0.6481」になります。sec(i) = 1/cos(i) = 1/cosh(1) = sech(1) ≈ 0.6481 なので、双曲線関数の世界とつながっているのが分かりますね。</p>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/03_result_imsec-basic.png" alt="03 result imsec basic" /></figure>



<h3 class="wp-block-heading"><span id="toc7">セル参照で複素数を指定する</span></h3>



<p class="wp-block-paragraph">実務ではセルに入った複素数を扱う場面が多いですよね。A2に「2+3i」が入っている場合は次のように書きます。</p>



<pre class="wp-block-code"><code>=IMSEC(A2)</code></pre>



<p class="wp-block-paragraph">結果は約「-0.0416+0.0906i」になります。セル参照を渡すだけで、入っている複素数のセカントを取り出せますよ。</p>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/04_result_imsec-cellref.png" alt="04 result imsec cellref" /></figure>



<h3 class="wp-block-heading"><span id="toc8">COMPLEX関数と組み合わせる</span></h3>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-complex-function/">COMPLEX関数</a>で作った複素数のセカントを、その場で計算することもできます。</p>



<pre class="wp-block-code"><code>=IMSEC(COMPLEX(1, 1))</code></pre>



<p class="wp-block-paragraph">結果は約「0.4983+0.5910i」、つまり「IMSEC(&#8220;1+1i&#8221;)」と同じですね。COMPLEX(1, 1)が内部で「1+1i」を作り、IMSEC関数がそのセカントを返してくれます。</p>



<p class="wp-block-paragraph">実部と虚部がセルに分かれているデータを扱うときに便利な書き方ですよ。</p>



<h3 class="wp-block-heading"><span id="toc9">IMCOS関数の逆数として書き換える</span></h3>



<p class="wp-block-paragraph">IMSEC関数は定義上、IMDIV関数（複素数の割り算）とIMCOS関数（複素数のコサイン）を組み合わせても表現できます。</p>



<pre class="wp-block-code"><code>=IMSEC(&quot;1+1i&quot;)
=IMDIV(&quot;1&quot;, IMCOS(&quot;1+1i&quot;))</code></pre>



<p class="wp-block-paragraph">どちらも結果は同じ約「0.4983+0.5910i」になりますね。IMSEC関数は内部で同じ計算をしてくれるので、わざわざIMDIVとIMCOSを書く必要はありません。読みやすさ・タイプ量・エラーの起きにくさのどれを取ってもIMSECの方が有利ですよ。</p>



<h3 class="wp-block-heading"><span id="toc10">度数からの変換と組み合わせる</span></h3>



<p class="wp-block-paragraph">実部・虚部が度数（°）で与えられているときは、RADIANS関数でラジアンに直してから渡します。</p>



<pre class="wp-block-code"><code>=IMSEC(COMPLEX(RADIANS(60), RADIANS(30)))</code></pre>



<p class="wp-block-paragraph">A列の度数を一気にラジアンに変換してから処理したい場合は、ARRAYFORMULA関数（数式を範囲全体に展開する関数）を併用すると便利ですね。</p>



<h3 class="wp-block-heading"><span id="toc11">ARRAYFORMULAで複数行を一括処理する</span></h3>



<p class="wp-block-paragraph">複素数のリストから一気にセカントの列を作りたい場面もありますよね。そんなときはARRAYFORMULA関数と組み合わせます。</p>



<pre class="wp-block-code"><code>=ARRAYFORMULA(IMSEC(A2:A10))</code></pre>



<p class="wp-block-paragraph">A列に並んだ複素数から、対応する正割の値をB列に一発で展開できますよ。複素三角関数のテーブルを作るときに重宝しますね。</p>



<h2 class="wp-block-heading"><span id="toc12">IMSEC関数の実務活用例</span></h2>



<h3 class="wp-block-heading"><span id="toc13">活用例1: IMCOSとの関係を検算する</span></h3>



<p class="wp-block-paragraph">複素数のセカントは sec(z) = 1/cos(z) という定義そのままなので、IMCOS関数とIMDIV関数を使って検算できます。</p>



<p class="wp-block-paragraph">A2に「1.5+0.7i」が入っているとします。</p>



<pre class="wp-block-code"><code>B2: =IMSEC(A2)                 ← セカントを直接計算
C2: =IMCOS(A2)                 ← コサインを計算
D2: =IMDIV(&quot;1&quot;, C2)            ← その逆数を取る
E2: =IMSUB(B2, D2)             ← B2とD2の差（≈ 0+0i のはず）</code></pre>



<p class="wp-block-paragraph">E2が「ほぼ 0+0i」になっていれば、IMSEC関数が定義どおり動いている証拠ですね。シート上で自動チェックを仕込んでおくと、入力ミスにも気付きやすくなりますよ。</p>



<h3 class="wp-block-heading"><span id="toc14">活用例2: 複素三角関数テーブルを作る</span></h3>



<p class="wp-block-paragraph">複素三角関数の挙動を学習するときは、IMSIN・IMCOS・IMSEC・IMCSC・IMTAN・IMCOTを並べた一覧表があると便利ですよね。</p>



<pre class="wp-block-code"><code>A2: 0.5+0.5i
B2: =IMSIN(A2)        ← サイン
C2: =IMCOS(A2)        ← コサイン
D2: =IMSEC(A2)        ← セカント
E2: =IMCSC(A2)        ← コセカント
F2: =IMTAN(A2)        ← タンジェント
G2: =IMCOT(A2)        ← コタンジェント</code></pre>



<p class="wp-block-paragraph">A列に複素数を並べておけば、複素関数の値を一気に俯瞰できます。複素解析の学習教材として、教科書の例題を確認するのにぴったりですね。</p>



<h3 class="wp-block-heading"><span id="toc15">活用例3: 信号処理のフィルタ伝達関数で使う</span></h3>



<p class="wp-block-paragraph">アナログフィルタの伝達関数 H(s) = 1/cos(s) のような形は、チェビシェフ多項式やバターワース近似の理論的な比較で登場します。s = σ + jω に IMSEC を適用すれば、シート上で値の挙動を確認できますよ。</p>



<pre class="wp-block-code"><code>A2: =COMPLEX(0.1, 1.0, &quot;j&quot;)     ← s = 0.1+1.0j
B2: =IMSEC(A2)                  ← H(s) = sec(s)
C2: =IMABS(B2)                  ← |H(s)|（ゲイン）
D2: =IMARGUMENT(B2)             ← arg H(s)（位相）</code></pre>



<p class="wp-block-paragraph">電気工学の慣習に合わせて虚数単位を「j」にしたい場合は、COMPLEX関数の第3引数で指定できますね。教科書のボード線図と見比べる用途に向いています。</p>



<h3 class="wp-block-heading"><span id="toc16">活用例4: 複素関数の値を可視化するシートを作る</span></h3>



<p class="wp-block-paragraph">複素関数の値を可視化したいときは、x = -π〜π を細かく刻み、それぞれに IMSEC を適用してから絶対値や実部・虚部を別列に取り出します。</p>



<pre class="wp-block-code"><code>A2: -3.14
A3: =A2+0.1                    ← 0.1刻みで増やす
B2: =IMSEC(COMPLEX(A2, 0.5))   ← 虚部固定でセカントを評価
C2: =IMREAL(B2)                ← 実部
D2: =IMAGINARY(B2)             ← 虚部
E2: =IMABS(B2)                 ← 絶対値</code></pre>



<p class="wp-block-paragraph">C列〜E列をグラフ化すれば、IMSECの実部・虚部・絶対値の振る舞いが一目で分かりますね。複素三角関数の学習用シートとして再利用しやすい形です。</p>



<h3 class="wp-block-heading"><span id="toc17">活用例5: 数値が大きくなる「極」の検出</span></h3>



<p class="wp-block-paragraph">cos(z) = 0 となる点（z = π/2, 3π/2, &#8230;）の近くでは、sec(z) は無限大に発散します。IMABS関数で絶対値を測れば、数値計算上の不安定領域を検出できますよ。</p>



<pre class="wp-block-code"><code>A2: 1.5708                      ← ≈ π/2
B2: =IMSEC(COMPLEX(A2, 0))      ← sec(π/2) は理論上∞
C2: =IMABS(B2)                  ← 巨大な値が出る
D2: =IF(C2&gt;1E10, &quot;極の近傍&quot;, &quot;OK&quot;)</code></pre>



<p class="wp-block-paragraph">D列で警告を出しておくと、フィルタ設計やシミュレーションで「危険な周波数」をひと目で識別できますね。</p>



<h2 class="wp-block-heading"><span id="toc18">IMSEC関数とCOMPLEX関数群の関係</span></h2>



<p class="wp-block-paragraph">複素数を扱う関数群の中で、IMSEC関数の位置づけを整理しておきましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>入力</th><th>出力</th><th>役割</th></tr></thead><tbody><tr><td><a href="https://mashukabu.com/spreadsheet-complex-function/">COMPLEX</a></td><td>実数 a, b</td><td>複素数 a+bi</td><td>複素数を作る</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imreal-function/">IMREAL</a></td><td>複素数 a+bi</td><td>実数 a</td><td>実部を取り出す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imaginary-function/">IMAGINARY</a></td><td>複素数 a+bi</td><td>実数 b</td><td>虚部を取り出す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imabs-function/">IMABS</a></td><td>複素数 a+bi</td><td>実数 √(a²+b²)</td><td>大きさを取り出す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imargument-function/">IMARGUMENT</a></td><td>複素数 a+bi</td><td>実数 atan2(b,a)</td><td>偏角を取り出す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imcos-function/">IMCOS</a></td><td>複素数 z</td><td>複素数 cos(z)</td><td>コサインを計算する</td></tr><tr><td>IMSIN</td><td>複素数 z</td><td>複素数 sin(z)</td><td>サインを計算する</td></tr><tr><td>IMSEC</td><td>複素数 z</td><td>複素数 1/cos(z)</td><td>セカントを計算する</td></tr><tr><td>IMCSC</td><td>複素数 z</td><td>複素数 1/sin(z)</td><td>コセカントを計算する</td></tr><tr><td>IMSECH</td><td>複素数 z</td><td>複素数 1/cosh(z)</td><td>双曲線セカントを計算する</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">IMSECは「複素数から複素数を計算する」役割です。出力もそのまま複素数なので、IMSUMやIMPRODUCTにそのまま渡してさらに計算を続けられますよ。</p>



<p class="wp-block-paragraph">たとえば sec(z) = 1/cos(z) を IMDIV と IMCOS で代用すると、こう書けます。</p>



<pre class="wp-block-code"><code>=IMSEC(&quot;1+1i&quot;)
=IMDIV(&quot;1&quot;, IMCOS(&quot;1+1i&quot;))</code></pre>



<p class="wp-block-paragraph">どちらも結果は約「0.4983+0.5910i」で同じですね。ただしIMSECの方が読みやすく、タイプ量も少ないので、特別な理由がなければIMSECを使う方が無難です。</p>



<p class="wp-block-paragraph">双曲線版のセカント（1/cosh(z)）が必要な場合は、専用の<a href="https://mashukabu.com/spreadsheet-imsech-function/">IMSECH関数</a>を使うと意図が明確になりますよ。</p>



<h2 class="wp-block-heading"><span id="toc19">IMSEC関数のよくあるエラーと対処法</span></h2>



<h3 class="wp-block-heading"><span id="toc20">#NUM! エラー（複素数の形式エラー）</span></h3>



<p class="wp-block-paragraph">複素数として認識できない文字列を渡したときに発生します。虚数単位が大文字になっていたり、i・j以外の文字を使っている場合が典型例ですよ。</p>



<pre class="wp-block-code"><code>=IMSEC(&quot;1+1I&quot;)    → #NUM!（大文字のIは不可）
=IMSEC(&quot;1+1k&quot;)    → #NUM!（i・j以外は不可）
=IMSEC(&quot;１+１i&quot;)  → #NUM!（全角文字は不可）</code></pre>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/05_error_num.png" alt="05 error num" /></figure>



<p class="wp-block-paragraph">対処法は、複素数文字列を必ず半角の「a+bi」または「a+bj」の形式にすることです。虚数単位は小文字限定なので、CapsLockがオンになっていないか確認してくださいね。</p>



<p class="wp-block-paragraph">スペースが入っている場合（例: <code>"1 + 1i"</code>）も認識できないことがあるので、余計な空白を除いておくと安心です。</p>



<h3 class="wp-block-heading"><span id="toc21">#VALUE! エラー（引数の型エラー）</span></h3>



<p class="wp-block-paragraph">引数に論理値や、複素数として解釈できない値を渡したときに発生します。</p>



<pre class="wp-block-code"><code>=IMSEC(TRUE)   → #VALUE!（論理値は不可）
=IMSEC(#N/A)   → #N/A（エラー値はそのまま伝播）</code></pre>



<p class="wp-block-paragraph">対処法は、引数を必ず複素数文字列または数値、もしくは複素数を返す関数の結果として渡すことです。他システムからコピーした値はテキスト扱いになっていることがあるので、<code>=ISTEXT(A2)</code> や <code>=ISNUMBER(A2)</code> でチェックしておくと安心ですよ。</p>



<h3 class="wp-block-heading"><span id="toc22">結果が極端な値になる（極の近傍）</span></h3>



<p class="wp-block-paragraph">cos(z) = 0 となる点（z = π/2 + nπ）の近くでは、sec(z) の絶対値が爆発的に大きくなります。</p>



<pre class="wp-block-code"><code>=IMSEC(&quot;1.5707963267948+0i&quot;)   → 約 1.6×10^16（理論値は∞）</code></pre>



<p class="wp-block-paragraph">対処法は、入力値が極の近くにないか事前にチェックすることです。<code>=IF(IMABS(IMCOS(A2))<1E-10, "極の近傍", IMSEC(A2))</code> のように、cos の絶対値が小さすぎるときは別処理に分岐させると安全ですね。</p>



<h3 class="wp-block-heading"><span id="toc23">結果の符号が想定と違う</span></h3>



<p class="wp-block-paragraph">複素数の正割は周期 2π と複素平面の対称性が組み合わさるため、入力の選び方によっては結果の符号が想定と違って見えることがあります。「なぜマイナスになるのか」と迷ったら、IMCOS関数で先にコサインを確認してみましょう。</p>



<pre class="wp-block-code"><code>=IMCOS(&quot;2+3i&quot;)          ← 元のコサインを確認
=IMSEC(&quot;2+3i&quot;)          ← セカント（IMCOSの逆数）</code></pre>



<p class="wp-block-paragraph">cos(z) の実部・虚部の符号と、セカントの符号が「逆数の関係」になっているかをチェックすると原因が見えてきますよ。</p>



<h3 class="wp-block-heading"><span id="toc24">IFERRORでまとめてエラーを吸収する</span></h3>



<p class="wp-block-paragraph">入力データの信頼性が低い場合は、IFERROR関数（エラー時に代替値を返す関数）で包んでおくとシート全体の集計が止まりません。</p>



<pre class="wp-block-code"><code>=IFERROR(IMSEC(A2), &quot;形式エラー&quot;)</code></pre>



<p class="wp-block-paragraph">エラー時にメッセージを返すようにしておけば、安心して大量データに適用できますよ。</p>



<h2 class="wp-block-heading"><span id="toc25">IMSEC関数とExcelの互換性</span></h2>



<p class="wp-block-paragraph">GoogleスプレッドシートのIMSEC関数は、ExcelのIMSEC関数と仕様が完全に一致しています。構文・引数・戻り値の形式・エラー条件まで同じですよ。</p>



<p class="wp-block-paragraph">ExcelファイルをGoogleスプレッドシートで開いてもIMSEC関数はそのまま動作します。逆にスプレッドシートで作った数式をExcelで開いても問題ありませんね。</p>



<p class="wp-block-paragraph">ExcelのIMSEC関数は、Excel 2013以降のすべてのバージョンで利用できます。Microsoft 365、Excel for Mac、Excel Online でも同じように使えますよ。Excel 2010以前のバージョンとファイルを共有する予定がある場合は、IMDIV・IMCOSの組み合わせで代替する必要があるので、お使いのバージョンが対応しているか確認しておきましょう。</p>



<h2 class="wp-block-heading"><span id="toc26">複素数関連の関数一覧</span></h2>



<p class="wp-block-paragraph">IMSEC関数と一緒に使うことが多い、複素数関連の関数をまとめました。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数名</th><th>機能</th></tr></thead><tbody><tr><td><a href="https://mashukabu.com/spreadsheet-complex-function/">COMPLEX</a></td><td>実数と虚数から複素数を作成する</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imreal-function/">IMREAL</a></td><td>複素数の実数係数を返す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imaginary-function/">IMAGINARY</a></td><td>複素数の虚数係数を返す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imabs-function/">IMABS</a></td><td>複素数の絶対値（大きさ）を返す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imargument-function/">IMARGUMENT</a></td><td>複素数の偏角（角度）をラジアンで返す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imconjugate-function/">IMCONJUGATE</a></td><td>共役複素数を返す</td></tr><tr><td>IMSUM</td><td>複素数の合計（足し算）を返す</td></tr><tr><td>IMSUB</td><td>複素数の差（引き算）を返す</td></tr><tr><td>IMPRODUCT</td><td>複素数の積（掛け算）を返す</td></tr><tr><td>IMDIV</td><td>複素数の商（割り算）を返す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-impower-function/">IMPOWER</a></td><td>複素数のべき乗を返す</td></tr><tr><td>IMSQRT</td><td>複素数の平方根を返す</td></tr><tr><td>IMEXP</td><td>複素数の指数関数を返す</td></tr><tr><td>IMLN</td><td>複素数の自然対数を返す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imcos-function/">IMCOS</a></td><td>複素数のコサインを返す</td></tr><tr><td>IMSIN</td><td>複素数のサインを返す</td></tr><tr><td>IMSEC</td><td>複素数のセカント（正割）を返す</td></tr><tr><td>IMCSC</td><td>複素数のコセカント（余割）を返す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imsech-function/">IMSECH</a></td><td>複素数の双曲線セカントを返す</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">IMSEC関数は、これら複素数関数群の中で「セカント（正割）を計算する」役割を担います。COMPLEXで作り、IMSECでセカントを取り、IMABS・IMARGUMENTで絶対値と偏角を確認するのが基本パターンですね。</p>



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



<p class="wp-block-paragraph">GoogleスプレッドシートのIMSEC関数は、複素数の正割（1/cos(z)）を返す関数です。信号処理のフィルタ伝達関数、電気工学の交流回路解析、複素解析の学習教材、特殊関数の評価など、複素三角関数が必要な場面で欠かせない関数ですよ。</p>



<ul class="wp-block-list"><li>構文は <code>=IMSEC(複素数)</code> で引数は1つだけ必須</li><li>「a+bi」を渡すと sec(a+bi) = 1/cos(a+bi) が返る</li><li>「a+bj」のような工学系表記もそのまま受け付ける</li><li>実部・虚部の単位はラジアン（度数の場合はRADIANS関数で変換）</li><li>内部的には cos(a+bi) = cos(a)cosh(b) − i sin(a)sinh(b) の逆数</li><li>COMPLEX関数の結果やセル参照、複素数演算の結果からセカントを計算できる</li><li>IMCOSとIMDIVの組み合わせと結果は同じだが、IMSECの方が読みやすい</li><li>純虚数 0+bi の場合は双曲線セカント sech(b) と同値</li><li>極（cos(z)=0）の近くでは絶対値が爆発するので、事前にIMCOSでチェック</li><li>ARRAYFORMULAで複数の複素数を一括処理できる</li><li>大文字の「I」「J」や全角文字、i・j以外の単位は #NUM! エラー</li><li>引数に論理値を渡すと #VALUE! エラー</li><li>ExcelのIMSEC関数と完全互換（Excel 2013以降）</li></ul>



<p class="wp-block-paragraph">複素数の正割が必要になったら、IMSEC関数の出番ですよ。COMPLEX関数で複素数を作り、IMSECでセカントを取り、IMABS・IMARGUMENT・IMCOSで結果を検算する流れで、エンジニアリング系のシートを軽快に組み立ててみてくださいね。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-imsec-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートのSEC関数の使い方｜正割（セカント）</title>
		<link>https://mashukabu.com/spreadsheet-sec-function/</link>
					<comments>https://mashukabu.com/spreadsheet-sec-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Thu, 26 Mar 2026 11:45:16 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[RADIANS関数]]></category>
		<category><![CDATA[SEC]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[三角関数]]></category>
		<category><![CDATA[数学関数]]></category>
		<category><![CDATA[正割]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=5321</guid>

					<description><![CDATA[GoogleスプレッドシートのSEC関数の使い方を初心者向けに解説。角度のラジアンから正割（セカント）を返す関数で、COS関数との関係（SEC = 1/COS）やRADIANS関数との組み合わせも紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">スプレッドシートで角度から正割（セカント）を求めたいとき、どの関数を使えばいいか迷っていませんか？</p>



<p class="wp-block-paragraph">三角関数の中でもセカントはなじみが薄くて、書き方がわからないですよね。</p>



<p class="wp-block-paragraph">そんなときに使うのがSEC関数です。<code>=SEC(角度)</code> と書くだけで、指定した角度の正割（セカント）を返してくれます。</p>



<p class="wp-block-paragraph">この記事では基本の書き方から、COS関数との関係、RADIANS関数との組み合わせ、実務での活用まで紹介します。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-2" checked><label class="toc-title" for="toc-checkbox-2">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">スプレッドシートのSEC関数とは？</a></li><li><a href="#toc2" tabindex="0">SEC関数の書き方（構文と引数）</a><ol><li><a href="#toc3" tabindex="0">基本構文</a></li><li><a href="#toc4" tabindex="0">引数の説明</a></li><li><a href="#toc5" tabindex="0">SEC関数とCOS関数の関係</a></li></ol></li><li><a href="#toc6" tabindex="0">SEC関数の基本的な使い方</a><ol><li><a href="#toc7" tabindex="0">ラジアンで角度を指定する</a></li><li><a href="#toc8" tabindex="0">RADIANS関数と組み合わせて度数法で指定する</a></li></ol></li><li><a href="#toc9" tabindex="0">実務でのSEC関数活用例</a><ol><li><a href="#toc10" tabindex="0">隣辺から斜辺の長さを求める</a></li><li><a href="#toc11" tabindex="0">距離の逆算に活用する</a></li></ol></li><li><a href="#toc12" tabindex="0">よくあるエラーと対処法</a><ol><li><a href="#toc13" tabindex="0">90度と270度ではエラーになる</a></li><li><a href="#toc14" tabindex="0">度数法をそのまま渡すミスに注意</a></li><li><a href="#toc15" tabindex="0">浮動小数点の誤差を丸める</a></li></ol></li><li><a href="#toc16" tabindex="0">似た関数との違い・使い分け</a><ol><li><a href="#toc17" tabindex="0">COS関数との関係</a></li><li><a href="#toc18" tabindex="0">CSC・COT関数との関係</a></li></ol></li><li><a href="#toc19" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">スプレッドシートのSEC関数とは？</span></h2>



<p class="wp-block-paragraph">SEC関数（読み方: セカント関数）は、<strong>角度の正割（セカント）を返す関数</strong>です。語源はラテン語の「secans」で、「切る（cutting）」を意味します。</p>



<p class="wp-block-paragraph">たとえば <code>=SEC(RADIANS(60))</code> と入力すると「2」が返ります。60度の正割がそのまま取得できるわけですね。</p>



<p class="wp-block-paragraph">SEC関数は<strong>ラジアン単位の角度</strong>を引数に取ります。度数法（30度、60度など）を使いたい場合は、RADIANS関数で変換してから渡します。</p>



<p class="wp-block-paragraph">SEC関数にできることをまとめると、次のとおりです。</p>



<ul class="wp-block-list"><li>角度のラジアン値から正割（セカント）を返す</li><li>RADIANS関数と組み合わせて度数法の角度を使う</li><li>COS関数の逆数として距離や長さの計算に活用する</li><li>工学や物理の計算で使う</li></ul>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>SEC関数はGoogleスプレッドシートの全バージョンで使えます。Excelとも完全に互換性があるので、ファイルのやり取りでも安心です。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc2">SEC関数の書き方（構文と引数）</span></h2>



<h3 class="wp-block-heading"><span id="toc3">基本構文</span></h3>



<pre class="wp-block-code"><code>=SEC(角度)</code></pre>



<p class="wp-block-paragraph">カッコの中にラジアン単位の角度を指定します。</p>



<h3 class="wp-block-heading"><span id="toc4">引数の説明</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/任意</th><th>説明</th></tr></thead><tbody><tr><td>角度</td><td>必須</td><td>正割を求めたい角度をラジアン単位で指定する</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数は1つだけです。ラジアン単位で指定する点がポイントですね。</p>



<p class="wp-block-paragraph">度数法の角度（60度、90度など）を使いたい場合は、次のどちらかで変換します。</p>



<pre class="wp-block-code"><code>=SEC(RADIANS(60))      ← RADIANS関数で変換
=SEC(60*PI()/180)      ← PI関数を使って手計算</code></pre>



<p class="wp-block-paragraph">どちらも同じ結果（2）を返します。式がシンプルなRADIANS関数がおすすめですよ。</p>



<h3 class="wp-block-heading"><span id="toc5">SEC関数とCOS関数の関係</span></h3>



<p class="wp-block-paragraph">SEC関数は<strong>COS関数の逆数</strong>です。数学的には次の関係が成り立ちます。</p>



<pre class="wp-block-code"><code>SEC(θ) = 1 / COS(θ)</code></pre>



<p class="wp-block-paragraph">つまり <code>=SEC(RADIANS(60))</code> と <code>=1/COS(RADIANS(60))</code> は同じ結果を返します。SEC関数がないバージョンでも <code>=1/COS()</code> で代用できますよ。</p>



<h2 class="wp-block-heading"><span id="toc6">SEC関数の基本的な使い方</span></h2>



<h3 class="wp-block-heading"><span id="toc7">ラジアンで角度を指定する</span></h3>



<p class="wp-block-paragraph">まずはラジアン値をそのまま渡すパターンです。</p>



<pre class="wp-block-code"><code>=SEC(PI()/3)</code></pre>



<p class="wp-block-paragraph">結果は「2」です。π/3ラジアン（60度）の正割は2ですね。</p>



<p class="wp-block-paragraph">代表的なラジアン値とSECの結果をまとめます。</p>



<figure class="wp-block-table"><table><thead><tr><th>数式</th><th>角度</th><th>結果</th></tr></thead><tbody><tr><td>=SEC(0)</td><td>0度</td><td>1</td></tr><tr><td>=SEC(PI()/6)</td><td>30度</td><td>1.1547&#8230;</td></tr><tr><td>=SEC(PI()/4)</td><td>45度</td><td>1.4142&#8230;</td></tr><tr><td>=SEC(PI()/3)</td><td>60度</td><td>2</td></tr><tr><td>=SEC(PI()/2)</td><td>90度</td><td>非常に大きい値（定義なし）</td></tr><tr><td>=SEC(PI())</td><td>180度</td><td>-1</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">90度のSECは数学的に定義されません。<a href="https://mashukabu.com/spreadsheet-cos-function/">COS関数</a>の値が0になるため、SEC = 1/COS の計算で「0で割る」ことになるからです。</p>



<h3 class="wp-block-heading"><span id="toc8">RADIANS関数と組み合わせて度数法で指定する</span></h3>



<p class="wp-block-paragraph">実務では度数法で角度を扱うことがほとんどです。RADIANS関数と組み合わせれば、度数法のまま使えます。</p>



<pre class="wp-block-code"><code>=SEC(RADIANS(60))</code></pre>



<p class="wp-block-paragraph">結果は「2」です。60度のセカントがそのまま求まりますね。</p>



<p class="wp-block-paragraph">よく使う角度の早見表を用意しました。</p>



<figure class="wp-block-table"><table><thead><tr><th>角度</th><th>数式</th><th>結果</th></tr></thead><tbody><tr><td>0度</td><td>=SEC(RADIANS(0))</td><td>1</td></tr><tr><td>30度</td><td>=SEC(RADIANS(30))</td><td>1.1547&#8230;</td></tr><tr><td>45度</td><td>=SEC(RADIANS(45))</td><td>1.4142&#8230;</td></tr><tr><td>60度</td><td>=SEC(RADIANS(60))</td><td>2</td></tr><tr><td>120度</td><td>=SEC(RADIANS(120))</td><td>-2</td></tr><tr><td>180度</td><td>=SEC(RADIANS(180))</td><td>-1</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">SECの値はCOSの逆数なので、COSが大きいところではSECは小さく、COSが小さいところではSECは大きくなります。</p>



<p class="wp-block-paragraph">角度をセルに入れておけば、ドラッグでまとめて計算することもできます。</p>



<p class="wp-block-paragraph">A列に角度を入力して、B1セルに次の式を入れてみてください。</p>



<pre class="wp-block-code"><code>=SEC(RADIANS(A1))</code></pre>



<p class="wp-block-paragraph">あとはB1をコピーして下方向に貼り付ければ、各角度の正割を一括で求められますよ。</p>



<h2 class="wp-block-heading"><span id="toc9">実務でのSEC関数活用例</span></h2>



<h3 class="wp-block-heading"><span id="toc10">隣辺から斜辺の長さを求める</span></h3>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-cos-function/">COS関数</a>は「傾斜角と斜辺から隣辺（底辺）」を求めるのに使いますが、SEC関数はその逆の発想で使えます。隣辺（底辺）と傾斜角から斜辺の長さを計算できます。</p>



<p class="wp-block-paragraph">斜辺は次の式で計算します。</p>



<pre class="wp-block-code"><code>=隣辺 * SEC(RADIANS(傾斜角))</code></pre>



<p class="wp-block-paragraph">たとえば底辺50mで傾斜角が60度の場合、斜辺の長さを求めてみましょう。</p>



<pre class="wp-block-code"><code>=50*SEC(RADIANS(60))</code></pre>



<p class="wp-block-paragraph">結果は「100」です。底辺50m・傾斜角60度の斜面は、斜辺が100mになることがわかります。</p>



<p class="wp-block-paragraph">いくつかの条件で比較してみます。</p>



<figure class="wp-block-table"><table><thead><tr><th>隣辺・底辺（A列）</th><th>傾斜角（B列）</th><th>数式</th><th>斜辺の長さ</th></tr></thead><tbody><tr><td>10m</td><td>0度</td><td>=A2*SEC(RADIANS(B2))</td><td>10.00m</td></tr><tr><td>50m</td><td>60度</td><td>=A3*SEC(RADIANS(B3))</td><td>100.00m</td></tr><tr><td>100m</td><td>45度</td><td>=A4*SEC(RADIANS(B4))</td><td>141.42m</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">傾斜角が0度のとき、隣辺と斜辺が等しくなります。これはSEC(0度) = 1 だからですね。</p>



<h3 class="wp-block-heading"><span id="toc11">距離の逆算に活用する</span></h3>



<p class="wp-block-paragraph">測量では斜面の底辺と角度から斜距離を求める場面があります。SEC関数を使えば直接計算できます。</p>



<p class="wp-block-paragraph">ただし、この計算は<a href="https://mashukabu.com/spreadsheet-cos-function/">COS関数</a>を使う方法（=隣辺/COS(RADIANS(角度))）でも同じ結果が得られます。SEC関数を使うとかけ算で済むので、数式がシンプルになりますよ。</p>



<h2 class="wp-block-heading"><span id="toc12">よくあるエラーと対処法</span></h2>



<p class="wp-block-paragraph">SEC関数でよくあるトラブルをまとめます。</p>



<figure class="wp-block-table"><table><thead><tr><th>症状</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td>#VALUE! エラー</td><td>引数に文字列を渡した</td><td>数値またはセル参照を指定する</td></tr><tr><td>#DIV/0! エラー</td><td>引数に90度を渡した（SEC(90度)は定義されない）</td><td>90度の正割は定義されないので角度を確認する</td></tr><tr><td>期待と違う値が返る</td><td>度数法をそのまま渡している</td><td>RADIANS関数で変換してから渡す</td></tr><tr><td>非常に大きな値が返る</td><td>90度（または270度）に近い角度を指定した</td><td>90度・270度のSECは定義されない。角度を確認する</td></tr><tr><td>結果がぴったり1にならない</td><td>浮動小数点の誤差</td><td>ROUND関数で丸める</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc13">90度と270度ではエラーになる</span></h3>



<p class="wp-block-paragraph">SEC関数でもっとも注意が必要なのは、90度（π/2ラジアン）を渡したときです。</p>



<pre class="wp-block-code"><code>=SEC(RADIANS(90))</code></pre>



<p class="wp-block-paragraph">この数式は非常に大きな値（または <code>#DIV/0!</code> エラー）になります。SEC = 1/COS で、COS(90度) = 0 なので「0で割る」ことになるためです。</p>



<p class="wp-block-paragraph">270度も同様です。COS(270度)は数学的には0なので、SEC(270度)も定義されません。</p>



<h3 class="wp-block-heading"><span id="toc14">度数法をそのまま渡すミスに注意</span></h3>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-cos-function/">COS関数</a>と同じく、度数法の角度をそのまま渡すと間違った結果になります。</p>



<pre class="wp-block-code"><code>=SEC(60)</code></pre>



<p class="wp-block-paragraph">この数式は「60ラジアン」の正割を計算します。結果は「-1.0499&#8230;」で、60度のセカント（2）とは全く違う値です。</p>



<p class="wp-block-paragraph">度数法で指定したい場合は、必ずRADIANS関数で変換しましょう。</p>



<pre class="wp-block-code"><code>=SEC(RADIANS(60))</code></pre>



<p class="wp-block-paragraph">こちらなら結果は「2」になります。</p>



<h3 class="wp-block-heading"><span id="toc15">浮動小数点の誤差を丸める</span></h3>



<p class="wp-block-paragraph">SEC(RADIANS(0)) は数学的には1ですが、実際には微小な誤差が返ることがあります。</p>



<p class="wp-block-paragraph">見た目を整えたい場合は、ROUND関数で丸めてください。</p>



<pre class="wp-block-code"><code>=ROUND(SEC(RADIANS(60)), 10)</code></pre>



<p class="wp-block-paragraph">結果は「2」になります。小数点以下10桁で丸めれば、実用上は問題ありませんよ。</p>



<h2 class="wp-block-heading"><span id="toc16">似た関数との違い・使い分け</span></h2>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>動作</th><th>引数</th><th>用途</th></tr></thead><tbody><tr><td><strong>SEC</strong></td><td><strong>正割（セカント）を返す</strong></td><td><strong>角度（ラジアン）</strong></td><td><strong>COS関数の逆数・斜辺の長さの計算</strong></td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-cos-function/">COS</a></td><td>余弦（コサイン）を返す</td><td>角度（ラジアン）</td><td>隣辺・距離計算</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-sin-function/">SIN</a></td><td>正弦（サイン）を返す</td><td>角度（ラジアン）</td><td>対辺・高さ・波形データ</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-tan-function/">TAN</a></td><td>正接（タンジェント）を返す</td><td>角度（ラジアン）</td><td>勾配・傾き・高さの計算</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-csc-function/">CSC</a></td><td>余割（コセカント）を返す</td><td>角度（ラジアン）</td><td>SIN関数の逆数・斜辺の計算</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-cot-function/">COT</a></td><td>余接（コタンジェント）を返す</td><td>角度（ラジアン）</td><td>TAN関数の逆数・水平距離</td></tr><tr><td>ASEC</td><td>逆正割（アークセカント）を返す</td><td>数値</td><td>セカント値から角度を逆算</td></tr><tr><td>RADIANS</td><td>度数法をラジアンに変換する</td><td>度数法の角度</td><td>SIN/COS/TAN/SECの引数準備</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc17">COS関数との関係</span></h3>



<p class="wp-block-paragraph">SEC関数とCOS関数は逆数の関係にあります。</p>



<pre class="wp-block-code"><code>SEC(θ) = 1 / COS(θ)
COS(θ) = 1 / SEC(θ)</code></pre>



<p class="wp-block-paragraph">スプレッドシートで確認してみましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>角度</th><th>SEC</th><th>COS</th><th>SEC * COS</th></tr></thead><tbody><tr><td>0度</td><td>1</td><td>1</td><td>1</td></tr><tr><td>30度</td><td>1.1547</td><td>0.8660</td><td>1</td></tr><tr><td>45度</td><td>1.4142</td><td>0.7071</td><td>1</td></tr><tr><td>60度</td><td>2</td><td>0.5</td><td>1</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">どの角度でもSECとCOSの積は1になります。片方の値がわかればもう一方もすぐ求められますよ。</p>



<p class="wp-block-paragraph">COS関数が0になる90度・270度ではSECは定義されません。お互いに補い合う関係ですね。</p>



<h3 class="wp-block-heading"><span id="toc18">CSC・COT関数との関係</span></h3>



<p class="wp-block-paragraph">SEC関数は<a href="https://mashukabu.com/spreadsheet-cos-function/">COS関数</a>の逆数、<a href="https://mashukabu.com/spreadsheet-csc-function/">CSC関数</a>は<a href="https://mashukabu.com/spreadsheet-sin-function/">SIN関数</a>の逆数、<a href="https://mashukabu.com/spreadsheet-cot-function/">COT関数</a>は<a href="https://mashukabu.com/spreadsheet-tan-function/">TAN関数</a>の逆数です。</p>



<pre class="wp-block-code"><code>SEC(θ) = 1 / COS(θ)
CSC(θ) = 1 / SIN(θ)
COT(θ) = 1 / TAN(θ)</code></pre>



<p class="wp-block-paragraph">3つの逆数関数をセットで覚えておくと、三角関数の理解が深まりますよ。</p>



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



<p class="wp-block-paragraph">SEC関数は、ラジアン単位の角度から正割（セカント）を返す関数です。</p>



<p class="wp-block-paragraph">ポイントを整理します。</p>



<ul class="wp-block-list"><li>構文は <code>=SEC(角度)</code> で、引数はラジアン単位</li><li>度数法の角度を使うなら <code>=SEC(RADIANS(度))</code> と変換する</li><li>SEC(RADIANS(60))=2 が代表的な値</li><li>SEC = 1/COS なので、<a href="https://mashukabu.com/spreadsheet-cos-function/">COS関数</a>の逆数</li><li>隣辺と傾斜角から斜辺を求めるなら <code>=隣辺*SEC(RADIANS(角度))</code></li><li>90度と270度ではエラーになる点に注意</li><li><a href="https://mashukabu.com/spreadsheet-cos-function/">COS関数</a>・<a href="https://mashukabu.com/spreadsheet-sin-function/">SIN関数</a>・<a href="https://mashukabu.com/spreadsheet-tan-function/">TAN関数</a>・<a href="https://mashukabu.com/spreadsheet-csc-function/">CSC関数</a>・<a href="https://mashukabu.com/spreadsheet-cot-function/">COT関数</a>とセットで覚えておくと便利</li></ul>



<p class="wp-block-paragraph">まずは <code>=SEC(RADIANS(60))</code> で2が返ることを確認してみてください。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-sec-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのSEC関数の使い方｜指定角度のセカント（正割）を求める方法</title>
		<link>https://mashukabu.com/excel-function-howto-use-sec/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-sec/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sat, 17 Sep 2022 09:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[RADIANS関数]]></category>
		<category><![CDATA[SEC関数]]></category>
		<category><![CDATA[セカント]]></category>
		<category><![CDATA[三角関数]]></category>
		<category><![CDATA[数学関数]]></category>
		<category><![CDATA[正割]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=2724</guid>

					<description><![CDATA[ExcelのSEC関数の使い方を解説。セカント（正割）の意味から構文・引数、度数指定のコツ、RADIANS関数との組み合わせ、測量・建築の斜面距離計算、よくあるエラーの対処法まで、実例付きでわかりやすく紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">ExcelでSEC関数を使おうとして、思ったような値が出なくて困っていませんか。「=SEC(60)」と入力しても、60度のセカントにはなりません。見慣れない数値が返ってきて、戸惑った方もいるかもしれません。</p>



<p class="wp-block-paragraph">原因は、SEC関数がラジアン（弧度法）という角度の単位を使うからです。度数法の角度をそのまま渡すと、まったく別の計算になってしまいます。RADIANS関数と組み合わせれば、度数で直感的に指定できますよ。</p>



<p class="wp-block-paragraph">セカント（正割）は、屋根の勾配から斜面の長さを求めたり、傾斜地の実距離を算出したりするときに登場する三角比です。事務作業では使う機会が少ないものの、建築・土木・測量・物理シミュレーション・CADの寸法計算など、実際に「コサインで割り戻す」場面が出てくると一気に使い道が広がります。</p>



<p class="wp-block-paragraph">この記事では、SEC関数の基本構文から度数での使い方、測量・建築・周期計算といった実務での活用例まで解説します。よくあるエラーの対処法もまとめて紹介しますね。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-3" checked><label class="toc-title" for="toc-checkbox-3">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">ExcelのSEC関数とは？</a><ol><li><a href="#toc2" tabindex="0">SEC関数の読み方</a></li><li><a href="#toc3" tabindex="0">セカント（正割）の意味</a></li></ol></li><li><a href="#toc4" tabindex="0">SEC関数の書き方（構文と引数）</a><ol><li><a href="#toc5" tabindex="0">基本構文</a></li><li><a href="#toc6" tabindex="0">引数の説明</a></li></ol></li><li><a href="#toc7" tabindex="0">SEC関数の基本的な使い方</a><ol><li><a href="#toc8" tabindex="0">ラジアンで直接指定する</a></li><li><a href="#toc9" tabindex="0">度数で指定する（RADIANS関数との組み合わせ）</a></li></ol></li><li><a href="#toc10" tabindex="0">SEC関数の実践的な活用例</a><ol><li><a href="#toc11" tabindex="0">測量や建築での斜面距離の計算</a></li><li><a href="#toc12" tabindex="0">屋根の勾配から葺き材の長さを求める</a></li><li><a href="#toc13" tabindex="0">COS関数との相互変換（互換性対応）</a></li><li><a href="#toc14" tabindex="0">波形データや周期計算での活用</a></li></ol></li><li><a href="#toc15" tabindex="0">よくあるエラーと対処法</a><ol><li><a href="#toc16" tabindex="0">#VALUE!エラー</a></li><li><a href="#toc17" tabindex="0">#NUM!エラー</a></li><li><a href="#toc18" tabindex="0">#DIV/0!エラー</a></li></ol></li><li><a href="#toc19" tabindex="0">関連する三角関数との違い・使い分け</a></li><li><a href="#toc20" tabindex="0">よくある質問</a><ol><li><a href="#toc21" tabindex="0">SEC関数とCOS関数の違いを教えてください</a></li><li><a href="#toc22" tabindex="0">90度のセカントはなぜ未定義なのですか？</a></li><li><a href="#toc23" tabindex="0">SEC関数はどのバージョンのExcelで使えますか？</a></li><li><a href="#toc24" tabindex="0">SEC関数はGoogleスプレッドシートでも使えますか？</a></li><li><a href="#toc25" tabindex="0">角度の単位はラジアンと度数のどちらで管理するのが良いですか？</a></li><li><a href="#toc26" tabindex="0">SEC関数の結果を見やすく表示するコツはありますか？</a></li><li><a href="#toc27" tabindex="0">SEC関数の入力で負の角度を渡しても問題ありませんか？</a></li></ol></li><li><a href="#toc28" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">ExcelのSEC関数とは？</span></h2>



<p class="wp-block-paragraph">SEC関数は、指定した角度のセカント（正割）を返す三角関数です。Microsoft 365をはじめ、現在主流のExcelで標準的に利用できます。Excel for the webやMac版Excel、Googleスプレッドシートでも同じ書式で使えますよ。</p>



<h3 class="wp-block-heading"><span id="toc2">SEC関数の読み方</span></h3>



<p class="wp-block-paragraph">SEC関数の読み方は「セカント」です。英語の「Secant」に由来しています。</p>



<h3 class="wp-block-heading"><span id="toc3">セカント（正割）の意味</span></h3>



<p class="wp-block-paragraph">セカント（正割）とは、コサインの逆数にあたる三角比です。数学的には次のように定義されます。</p>



<pre class="wp-block-code"><code>sec(θ) = 1 / cos(θ) = 斜辺 / 隣辺</code></pre>



<p class="wp-block-paragraph">直角三角形でいうと、「斜辺÷隣辺」の比率がセカントです。<a href="https://mashukabu.com/excel-function-howto-use-cos/">COS関数</a>の結果をひっくり返したものと覚えてくださいね。</p>



<h2 class="wp-block-heading"><span id="toc4">SEC関数の書き方（構文と引数）</span></h2>



<h3 class="wp-block-heading"><span id="toc5">基本構文</span></h3>



<pre class="wp-block-code"><code>=SEC(数値)</code></pre>



<p class="wp-block-paragraph">引数は「数値」の1つだけです。とてもシンプルな関数ですね。</p>



<h3 class="wp-block-heading"><span id="toc6">引数の説明</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/省略可</th><th>説明</th></tr></thead><tbody><tr><td>数値</td><td>必須</td><td>セカントを求めたい角度をラジアン単位で指定します</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">数値の絶対値は2^27（= 134,217,728）未満にする必要があります。この範囲を超えると#NUM!エラーになります。</p>



<p class="wp-block-paragraph">ラジアンとは、円の半径と同じ長さの弧に対する中心角です。360度が2π（約6.2832）に相当します。度数法で指定したい場合は、次のセクションを参考にしてください。</p>



<h2 class="wp-block-heading"><span id="toc7">SEC関数の基本的な使い方</span></h2>



<h3 class="wp-block-heading"><span id="toc8">ラジアンで直接指定する</span></h3>



<p class="wp-block-paragraph">引数にラジアン値をそのまま指定する方法です。</p>



<pre class="wp-block-code"><code>=SEC(0)</code></pre>



<p class="wp-block-paragraph">この数式は1を返します。0ラジアン（= 0度）のセカントは1です。</p>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-pi/">PI関数</a>を使って代表的な角度を指定することもできます。</p>



<pre class="wp-block-code"><code>=SEC(PI())</code></pre>



<p class="wp-block-paragraph">この数式は-1を返します。π（= 180度）のセカントは-1です。</p>



<h3 class="wp-block-heading"><span id="toc9">度数で指定する（RADIANS関数との組み合わせ）</span></h3>



<p class="wp-block-paragraph">実務では度数法で角度を扱うことが多いですよね。<a href="https://mashukabu.com/excel-function-howto-use-radians/">RADIANS関数</a>で変換してからSEC関数に渡しましょう。</p>



<pre class="wp-block-code"><code>=SEC(RADIANS(60))</code></pre>



<p class="wp-block-paragraph">この数式は2を返します。RADIANS(60)で60度をラジアンに変換し、そのセカントを計算しています。</p>



<p class="wp-block-paragraph">別の書き方として <code>=SEC(角度*PI()/180)</code> もありますが、RADIANS関数を使うほうが読みやすいのでおすすめです。</p>



<p class="wp-block-paragraph">代表的な角度のSEC値をまとめました。</p>



<figure class="wp-block-table"><table><thead><tr><th>角度</th><th>数式</th><th>結果</th><th>数学的な値</th></tr></thead><tbody><tr><td>0°</td><td>=SEC(0)</td><td>1</td><td>1</td></tr><tr><td>30°</td><td>=SEC(RADIANS(30))</td><td>約1.1547</td><td>2/√3</td></tr><tr><td>45°</td><td>=SEC(RADIANS(45))</td><td>約1.4142</td><td>√2</td></tr><tr><td>60°</td><td>=SEC(RADIANS(60))</td><td>2</td><td>2</td></tr><tr><td>90°</td><td>=SEC(RADIANS(90))</td><td>巨大な値</td><td>未定義</td></tr><tr><td>180°</td><td>=SEC(PI())</td><td>-1</td><td>-1</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">90度ではcos(90°) = 0なので、セカントは数学的に未定義です。ただしExcelでは浮動小数点誤差の影響で、cos(90°)が完全な0になりません。そのため#DIV/0!エラーではなく、非常に大きな値が返ります。この点は覚えておいてくださいね。</p>



<h2 class="wp-block-heading"><span id="toc10">SEC関数の実践的な活用例</span></h2>



<h3 class="wp-block-heading"><span id="toc11">測量や建築での斜面距離の計算</span></h3>



<p class="wp-block-paragraph">建築や土木の現場では、斜面の長さを計算するときにセカントが役立ちます。水平距離100mの地面に30度の傾斜がある場合を考えてみましょう。</p>



<p class="wp-block-paragraph">斜面の長さは「水平距離 x sec(傾斜角)」で求められます。</p>



<pre class="wp-block-code"><code>=100*SEC(RADIANS(30))</code></pre>



<p class="wp-block-paragraph">この数式は約115.47を返します。水平距離100mに対して、斜面の実際の長さは約115.47mになります。「斜辺 = 隣辺 / cos(θ)」の公式そのものですね。</p>



<p class="wp-block-paragraph">傾斜角がセル（例: B1）に入っている場合は、次のように書きます。</p>



<pre class="wp-block-code"><code>=A1*SEC(RADIANS(B1))</code></pre>



<p class="wp-block-paragraph">A1に水平距離、B1に傾斜角（度数）を入力すれば、斜面距離を一括で計算できますよ。複数行に同じ数式をコピーすれば、現場ごとの傾斜地の実距離を一覧で把握できます。結果を小数点以下2桁に丸めて表示したい場合は、<a href="https://mashukabu.com/excel-function-howto-use-round/">ROUND関数</a>と組み合わせて <code>=ROUND(A1*SEC(RADIANS(B1)),2)</code> のように書きましょう。</p>



<h3 class="wp-block-heading"><span id="toc12">屋根の勾配から葺き材の長さを求める</span></h3>



<p class="wp-block-paragraph">住宅の屋根勾配から実際に必要な葺き材の長さを概算する場面でも、セカントが活躍します。屋根の水平投影長さに <code>SEC(勾配角)</code> を掛けると、屋根面に沿った実寸が得られます。</p>



<pre class="wp-block-code"><code>=水平長*SEC(RADIANS(勾配角))</code></pre>



<p class="wp-block-paragraph">たとえば水平投影で5mの片流れ屋根に勾配20度を付けた場合は、<code>=5*SEC(RADIANS(20))</code> で約5.32mとなります。発注時の予備材を計算する下地としても便利です。</p>



<h3 class="wp-block-heading"><span id="toc13">COS関数との相互変換（互換性対応）</span></h3>



<p class="wp-block-paragraph">SEC関数は現在主流のExcelで標準的に使えますが、ごく古い環境では<a href="https://mashukabu.com/excel-function-howto-use-cos/">COS関数</a>を使って同じ計算ができます。</p>



<pre class="wp-block-code"><code>' SEC関数を使う方法（Microsoft 365などの現行バージョン）
=SEC(RADIANS(60))

' COS関数で代用する方法（古いExcelでの代替）
=1/COS(RADIANS(60))</code></pre>



<p class="wp-block-paragraph">どちらも結果は2です。Microsoft 365を使えるなら、SEC関数のほうがシンプルで読みやすいですね。</p>



<p class="wp-block-paragraph">ファイルを古い環境とも共有する可能性がある場合は、<code>=1/COS()</code> の書き方で統一しておくと互換性の心配がありません。</p>



<h3 class="wp-block-heading"><span id="toc14">波形データや周期計算での活用</span></h3>



<p class="wp-block-paragraph">信号処理や物理の計算では、コサイン波の逆数としてセカントを使う場面があります。A列に角度（度数）が入っている場合は、次の数式で一括計算できます。</p>



<pre class="wp-block-code"><code>=SEC(RADIANS(A1))</code></pre>



<p class="wp-block-paragraph">このセルを下方向にコピーすれば、全データのセカント値を一気に求められます。グラフ化すると90度や270度付近で値が発散する特徴的な形が確認できますよ。</p>



<p class="wp-block-paragraph">ただし、90度や270度に近い値では結果が非常に大きくなります。そんな値が含まれそうなときは、<a href="https://mashukabu.com/excel-function-howto-use-iferror/">IFERROR関数</a>や<a href="https://mashukabu.com/excel-function-howto-use-if/">IF関数</a>で保護しておくと安心ですよ。</p>



<pre class="wp-block-code"><code>=IFERROR(SEC(RADIANS(A1)), &quot;計算不可&quot;)</code></pre>



<p class="wp-block-paragraph">巨大な値を一律で除外したい場合は、<a href="https://mashukabu.com/excel-function-howto-use-abs/">ABS関数</a>で絶対値の閾値判定を組み合わせる方法もあります。</p>



<pre class="wp-block-code"><code>=IF(ABS(SEC(RADIANS(A1)))&gt;100, &quot;発散&quot;, SEC(RADIANS(A1)))</code></pre>



<p class="wp-block-paragraph">100倍以上に発散したら「発散」と表示し、それ以外は通常のセカント値を返す数式です。グラフを描く前のデータクレンジングに便利ですね。</p>



<h2 class="wp-block-heading"><span id="toc15">よくあるエラーと対処法</span></h2>



<h3 class="wp-block-heading"><span id="toc16">#VALUE!エラー</span></h3>



<p class="wp-block-paragraph">SEC関数に数値として認識できない文字列を渡すと、#VALUE!エラーが発生します。</p>



<pre class="wp-block-code"><code>=SEC(&quot;abc&quot;)    → #VALUE!エラー
=SEC(A1)       → A1が文字列の場合は#VALUE!エラー</code></pre>



<p class="wp-block-paragraph">数値以外のデータが混在する場合は、ISNUMBER関数で事前にチェックすると安全です。</p>



<pre class="wp-block-code"><code>=IF(ISNUMBER(A1), SEC(RADIANS(A1)), &quot;数値を入力してください&quot;)</code></pre>



<h3 class="wp-block-heading"><span id="toc17">#NUM!エラー</span></h3>



<p class="wp-block-paragraph">引数の絶対値が2^27（134,217,728）以上の場合、#NUM!エラーが発生します。</p>



<pre class="wp-block-code"><code>=SEC(200000000)    → #NUM!エラー</code></pre>



<p class="wp-block-paragraph">通常の角度計算でこの上限に達することはまずありません。もしこのエラーが出たら、入力値が正しいか確認してみてください。</p>



<h3 class="wp-block-heading"><span id="toc18">#DIV/0!エラー</span></h3>



<p class="wp-block-paragraph">cos(θ) = 0となる角度（90度、270度など）では、#DIV/0!が出そうに思えますよね。しかし実際には、このエラーは発生しません。</p>



<p class="wp-block-paragraph">RADIANS(90)はπ/2のごくわずかな近似値になります。cos(θ)が完全な0にならないため、#DIV/0!の代わりに非常に大きな値（例: 1.63E+16）が返ります。</p>



<p class="wp-block-paragraph">もし90度や270度の入力を事前にはじきたい場合は、次のような数式で対処できます。</p>



<pre class="wp-block-code"><code>=IF(MOD(A1, 180)=90, &quot;未定義&quot;, SEC(RADIANS(A1)))</code></pre>



<h2 class="wp-block-heading"><span id="toc19">関連する三角関数との違い・使い分け</span></h2>



<p class="wp-block-paragraph">SEC関数と関連する三角関数の関係を表にまとめました。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>意味</th><th>数学的な定義</th><th>Excel数式例</th></tr></thead><tbody><tr><td><a href="https://mashukabu.com/excel-function-howto-use-cos/">COS</a></td><td>コサイン（余弦）</td><td>隣辺 ÷ 斜辺</td><td>=COS(RADIANS(60)) → 0.5</td></tr><tr><td>SEC</td><td>セカント（正割）</td><td>斜辺 ÷ 隣辺（= 1/cos）</td><td>=SEC(RADIANS(60)) → 2</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-csc/">CSC</a></td><td>コセカント（余割）</td><td>斜辺 ÷ 対辺（= 1/sin）</td><td>=CSC(RADIANS(30)) → 2</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-cot/">COT</a></td><td>コタンジェント（余接）</td><td>隣辺 ÷ 対辺（= 1/tan）</td><td>=COT(RADIANS(45)) → 1</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">SEC・CSC・COTはそれぞれCOS・<a href="https://mashukabu.com/excel-function-howto-use-sin/">SIN</a>・<a href="https://mashukabu.com/excel-function-howto-use-tan/">TAN</a>の逆数です。Microsoft 365では3関数とも標準で利用できるので、<code>=1/COS(数値)</code> のように逆数を手で書く必要はありません。</p>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-sech/">SECH関数</a>（双曲線セカント）はSEC関数と名前が似ていますが別物です。双曲線関数の一種で、工学系の計算に使われます。通常のセカント計算にはSEC関数を使えば問題ありませんよ。</p>



<h2 class="wp-block-heading"><span id="toc20">よくある質問</span></h2>



<h3 class="wp-block-heading"><span id="toc21">SEC関数とCOS関数の違いを教えてください</span></h3>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-cos/">COS関数</a>はコサイン（隣辺÷斜辺）を求め、SEC関数はその逆数であるセカント（斜辺÷隣辺）を求めます。数式の関係は <code>SEC(θ) = 1 / COS(θ)</code> です。どちらも引数にはラジアンを使うため、度数で指定する際は<a href="https://mashukabu.com/excel-function-howto-use-radians/">RADIANS関数</a>との組み合わせが必要です。「コサインの逆数が欲しい」場面で <code>=1/COS()</code> の代わりに <code>=SEC()</code> を使うとシンプルに書けます。</p>



<h3 class="wp-block-heading"><span id="toc22">90度のセカントはなぜ未定義なのですか？</span></h3>



<p class="wp-block-paragraph">cos(90°) = 0になるため、セカントの定義式 <code>1/cos(θ)</code> が0除算となり数学的に未定義です。ただしExcelでは、RADIANS(90)がπ/2の近似値になる浮動小数点誤差の影響でcos(θ)が完全な0にならないため、#DIV/0!エラーではなく非常に大きな値（例: 1.63E+16）が返ります。意図的に90度の入力を除外したい場合は <code>=IF(MOD(A1,180)=90, "未定義", SEC(RADIANS(A1)))</code> のような数式で対処できます。</p>



<h3 class="wp-block-heading"><span id="toc23">SEC関数はどのバージョンのExcelで使えますか？</span></h3>



<p class="wp-block-paragraph">SEC関数はMicrosoft 365をはじめ現在主流のExcel全般で利用できます。Excel for the web・Mac版Excel・Googleスプレッドシートでも同じ書式で動きます。社内に古いExcelが残っている場合に備えて互換性を持たせたいときは、<code>=1/COS(RADIANS(角度))</code> で代用すれば同じ結果になりますよ。</p>



<h3 class="wp-block-heading"><span id="toc24">SEC関数はGoogleスプレッドシートでも使えますか？</span></h3>



<p class="wp-block-paragraph">はい、GoogleスプレッドシートにもSEC関数があり、Excelと同じ書式 <code>=SEC(数値)</code> で使えます。ラジアン指定の仕様も同じなので、RADIANS関数との組み合わせもそのまま使えます。</p>



<h3 class="wp-block-heading"><span id="toc25">角度の単位はラジアンと度数のどちらで管理するのが良いですか？</span></h3>



<p class="wp-block-paragraph">実務では「入力は度数、計算はラジアン」と役割を分けるのがおすすめです。シートには現場で扱う度数の値を入力しておき、関数の中で<a href="https://mashukabu.com/excel-function-howto-use-radians/">RADIANS関数</a>を使ってラジアンに変換します。こうすると入力ミスに気づきやすく、見たままの単位で管理できます。ラジアンを直接入力する欄を作ると、<code>PI()/3</code> のような表現と数値が混在して読みにくくなるため避けたほうが安全です。</p>



<h3 class="wp-block-heading"><span id="toc26">SEC関数の結果を見やすく表示するコツはありますか？</span></h3>



<p class="wp-block-paragraph">セカントの値は90度付近で急激に大きくなるため、そのままだと指数表記（例: 1.63E+16）になって読みにくくなります。表示用には<a href="https://mashukabu.com/excel-function-howto-use-round/">ROUND関数</a>で桁数を制御するか、セルの書式設定で小数点以下の桁数を固定するのがおすすめです。発散しやすい列ではセルの幅を広めに取り、<code>=IFERROR(ROUND(SEC(RADIANS(A1)),4),"-")</code> のように丸めとエラー処理をまとめて書いておくと、表全体の見やすさが揃いますよ。</p>



<h3 class="wp-block-heading"><span id="toc27">SEC関数の入力で負の角度を渡しても問題ありませんか？</span></h3>



<p class="wp-block-paragraph">問題ありません。SEC関数は偶関数（sec(-θ) = sec(θ)）なので、負の角度を渡しても同じ符号・同じ大きさの値が返ります。例えば <code>=SEC(RADIANS(-60))</code> は2、<code>=SEC(RADIANS(60))</code> も2です。データ中に符号付きの角度が混在していても、符号反転の影響を気にせず使えますよ。</p>



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



<p class="wp-block-paragraph">SEC関数は、指定した角度のセカント（正割）を求める関数です。</p>



<p class="wp-block-paragraph">ポイントを整理しておきましょう。</p>



<ul class="wp-block-list"><li>構文は <code>=SEC(数値)</code> で、引数はラジアン単位の数値を1つだけ指定する</li><li>度数法の角度を使うには <code>=SEC(RADIANS(角度))</code> と<a href="https://mashukabu.com/excel-function-howto-use-radians/">RADIANS関数</a>で変換する</li><li>セカントはコサインの逆数（sec = 1/cos）。<a href="https://mashukabu.com/excel-function-howto-use-cos/">COS関数</a>とセットで覚えておくと便利</li><li>文字列を渡すと#VALUE!エラー、絶対値が2^27以上で#NUM!エラーになる</li><li>90度では#DIV/0!は出ないが、浮動小数点誤差で巨大な値が返る点に注意</li><li>測量・建築・屋根勾配の計算など、実務にも活用できる</li><li>負の角度でも対称的に動作し、Microsoft 365やGoogleスプレッドシートでも同じ書式で使える</li></ul>



<p class="wp-block-paragraph">姉妹関数の<a href="https://mashukabu.com/excel-function-howto-use-csc/">CSC関数</a>・<a href="https://mashukabu.com/excel-function-howto-use-cot/">COT関数</a>もあわせて覚えておくと、三角関数を使った計算がスムーズになりますよ。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-sec/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
