# 計算フィールドの「#N/A!」表示しない方法が有りますか？（図１の計算フィールド値をJSで修正出来無さそうです）

**URL:** <https://community.cybozu.dev/t/topic/449>\
**Category:** kintone 開発相談\
**Created:** [2017 年 7 月 20 日午前 3:46 UTC](https://community.cybozu.dev/t/topic/449 "2017-07-20T03:46:51Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Legacy\_Account1801](https://avatars.discourse-cdn.com/v4/letter/l/4491bb/32.png) [@Legacy\_Account1801](https://community.cybozu.dev/u/Legacy_Account1801)\
**Post date:** [2017 年 7 月 20 日午前 3:46 UTC](https://community.cybozu.dev/t/topic/449/1 "2017-07-20T03:46:51Z")

</div>

下記リンクのやり方は図1のフィールドが出来ます、図2の「#N/A!」表示しない方法が有りますか？

図１文字列フィールドの処理は図2計算フィールドに使えないです。（図１の計算フィールド値をJSで修正出来無さそうです）。

計算フィールドの#N/A!非表示は別方法ですか？

&nbsp;

[https://developer.cybozu.io/hc/ja/community/posts/115009621006-%E8%87%AA%E5%8B%95%E8%A8%88%E7%AE%97%E3%81%99%E3%82%8B%E9%A0%85%E7%9B%AE%E3%81%AF%E5%80%A4%E3%81%8C%E3%81%AA%E3%81%84%E6%99%82%E3%81%AE-N-A-%E8%A1%A8%E7%A4%BA%E3%81%97%E3%81%AA%E3%81%84%E6%96%B9%E6%B3%95%E3%81%8C%E6%9C%89%E3%82%8A%E3%81%BE%E3%81%99%E3%81%8B-](https://community.cybozu.dev/hc/ja/community/posts/115009621006-%E8%87%AA%E5%8B%95%E8%A8%88%E7%AE%97%E3%81%99%E3%82%8B%E9%A0%85%E7%9B%AE%E3%81%AF%E5%80%A4%E3%81%8C%E3%81%AA%E3%81%84%E6%99%82%E3%81%AE-N-A-%E8%A1%A8%E7%A4%BA%E3%81%97%E3%81%AA%E3%81%84%E6%96%B9%E6%B3%95%E3%81%8C%E6%9C%89%E3%82%8A%E3%81%BE%E3%81%99%E3%81%8B-)

図1

&nbsp;

図2

---

<div class="post-metadata">

**Author:** ![Legacy\_Account1517](https://avatars.discourse-cdn.com/v4/letter/l/4bbf92/32.png) [@Legacy\_Account1517](https://community.cybozu.dev/u/Legacy_Account1517)\
**Post date:** [2017 年 7 月 20 日午後 2:24 UTC](https://community.cybozu.dev/t/topic/449/2 "2017-07-20T14:24:16Z")

</div>

pankou さん

計算フィールドについて、#N/A!非表示は出来ません。

対策としては、計算フィールドの代わりに数値フィールドを使い、JavaScript で計算します。

経験年数の計算には、Moment ライブラリを使います。

あと更新日時の項目は、新規レコード追加画面では使えませんので、代わりにPC時刻を使います。

難点としては、PC時間がずれていると計算結果もずれます。

サンプルコードです。

```
(function() {
"use strict";

var events = [
"app.record.edit.show","app.record.create.show",
"app.record.edit.change.雇用年月日","app.record.create.change.雇用年月日"
];
kintone.events.on(events, function(event) {
var record = event.record;
if (record['雇用年月日'].value) {
moment.locale('ja');
record['経験年数'].value = Math.floor(moment().diff(moment(record['雇用年月日'].value), 'months')*10/12)/10.0;
}
else {
record['経験年数'].value = '';
}
return event;
});

})();

```

&nbsp;

---

<div class="post-metadata">

**Author:** ![Legacy\_Account1801](https://avatars.discourse-cdn.com/v4/letter/l/4491bb/32.png) [@Legacy\_Account1801](https://community.cybozu.dev/u/Legacy_Account1801)\
**Post date:** [2017 年 7 月 20 日午後 11:56 UTC](https://community.cybozu.dev/t/topic/449/3 "2017-07-20T23:56:01Z")

</div>

詳しくご回答、ありがとうございます～ (^\_^)y
