回答 受付中

スプレットシートで#N/Aを表示させない

  • 困ってます
  • 質問No.9618459
  • 閲覧数17
  • ありがとう数0
  • 気になる数0
  • 回答数1

お礼率 57% (119/206)

申し訳ありません、スプレットシートで
1つ教えて頂けないでしょうか。


入力シートと単価シートがあります。
入力シートはA列から品番,単価1,単価2,単価3,部品,単価1,単価2,単価3となります。
単価シートはA列から品番,単価1,単価2,単価3で3行、1行空けて6行からは
部品,単価1,単価2,単価3で3行になります。

品番  単価1 単価2 単価3
あ   50 60 70
い   80 90 100 
う   110 120 130

QQ   10 20 30
WW   40 50 60
EE   70 80 90
この様になります。

入力シートのA列で品番,E列で部品を入力すると単価シートを参照し
B列からD列に品番単価,F列からH列に部品単価が表示されるようにしました。

そこで現状のコードだとE列に値が無くても部品単価1,2,3に#N/Aが
セットされてしまいます。

下記のコードをA列,E列がセットされていない時は何もしないようにしたいのです。

function WriteVlookup() {
var sheet = SpreadsheetApp.getActive().getSheetByName('入力シート');
var myCell = sheet.getActiveCell();
var myRow=myCell.getRow();
var myColumn=myCell.getColumn();
if(myColumn==1 && myRow>=2 ){
for(var i = 2; i <= 4; i++) {
strformula ='=VLOOKUP($A' + myRow + ',\'単価シート\'!$A$2:$D$4,' + i + ',False)';
sheet.getRange(myRow, i).setFormula(strformula);
strformula2 ='=VLOOKUP($E' + myRow + ',\'単価シート\'!$A$6:$D$8,' + i + ',False)';
sheet.getRange(myRow, i + 4).setFormula(strformula2);
}
}
};

例えば入力シートであと A列に入力すると
E列まだ空白なのでF列からは#N/Aと表示されてしまいます。

A   B C D E F G H
あ  50 60 70 #N/A #N/A #N/A
い 80 90 100 QQ 40 50 60
上記のコードをどのように修正すれば#N/Aが
表示されなくなりますか?
宜しくお願いします。

回答 (全1件)

  • 回答No.1

ベストアンサー率 53% (516/966)

他カテゴリのカテゴリマスター
それぞれのVLOOKUP関数を以下のように変更してください。
'=IFERROR(VLOOKUP($A' + myRow + ',\'単価シート\'!$A$2:$D$4,' + i + ',False),"")';
'=IFERROR(VLOOKUP($E' + myRow + ',\'単価シート\'!$A$6:$D$8,' + i + ',False),"")';
関連するQ&A
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,600万件のQ&Aを分析して最適な回答をご提案します。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する

ピックアップ

ページ先頭へ