Excel.NamedItem class

セルまたは値の範囲の定義済みの名前を表します。 名前には、プリミティブの名前付きオブジェクト (次の型を参照)、範囲オブジェクト、または範囲への参照を指定できます。 このオブジェクトを使用して、名前に関連付けられた範囲オブジェクトを取得することができます。

Extends

注釈

API セット: ExcelApi 1.1

使用元

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/34-named-item/create-and-remove-named-item.yaml

await Excel.run(async (context) => {
    // Log all the named items in the active worksheet.
    const namedItems = context.workbook.worksheets.getActiveWorksheet().names.load();
    await context.sync();

    console.log("This worksheet contains " + namedItems.items.length + " named items.");

    for (let i = 0; i < namedItems.items.length; i++) {
        const namedItem : Excel.NamedItem = namedItems.items[i];
        console.log(JSON.stringify(namedItem)) + "\n";
    }

    await context.sync();
});

プロパティ

arrayValues

名前付きアイテムの値と型を含むオブジェクトを返します。

comment

この名前に関連付けられているコメントを指定します。

context

オブジェクトに関連付けられている要求コンテキスト。 これにより、アドインのプロセスが Office ホスト アプリケーションのプロセスに接続されます。

formula

名前付きアイテムの数式。 数式は常に等号 ("=") で始まります。

name

オブジェクトの名前。

scope

名前をブックまたは特定のワークシートのどちらにスコープするかを指定します。 指定可能な値は Worksheet、Workbook です。

type

名前の数式によって返される値の型を指定します。 詳細は「Excel.NamedItemType」をご覧ください。

value

名前の数式で計算された値を表します。 名前付き範囲の場合は、範囲アドレスが返されます。 この API は #VALUE! を返します。 ユーザー定義の関数を参照する場合は、エラーが Excel UI に表示されます。

valueAsJson

この名前付きアイテムの値の JSON 表現。 NamedItem.value とは異なり、NamedItem.valueAsJson はセル内のすべてのデータ型をサポートします。 たとえば、標準のブール値、数値値、文字列値に加えて、書式設定された数値や Web 画像などがあります。 この API から返されるデータは、常に en-US ロケールに合わせて調整されます。 ユーザーの表示ロケールでデータを取得するには、 NamedItem.valueAsJsonLocal を使用します。

valueAsJsonLocal

この名前付きアイテムの値の JSON 表現。 NamedItem.value とは異なり、NamedItem.valueAsJsonLocal はセル内のすべてのデータ型をサポートします。 たとえば、標準のブール値、数値値、文字列値に加えて、書式設定された数値や Web 画像などがあります。 この API から返されるデータは、常にユーザーの表示ロケールに合わせて調整されます。 ロケールに関係なくデータを取得するには、 NamedItem.valueAsJson を使用します。

visible

オブジェクトが表示されるかどうかを指定します。

worksheet

名前付きのアイテムの対象になるワークシートを返します。 アイテムのスコープがブックに対して設定されている場合は、エラーをスローします。

worksheetOrNullObject

名前付きアイテムのスコープが設定されているワークシートを返します。 アイテムのスコープがブックに設定されている場合、このメソッドは isNullObject プロパティが true に設定されたオブジェクトを返します。 詳細については、「 *OrNullObject のメソッドとプロパティ」を参照してください。

メソッド

delete()

指定された名前を削除します。

getRange()

名前に関連付けられている範囲オブジェクトを返します。 名前付きアイテムの型が範囲でない場合、エラーをスローします。

getRangeOrNullObject()

名前に関連付けられている範囲オブジェクトを返します。 名前付きアイテムの型が範囲ではない場合、このメソッドは isNullObject プロパティが true に設定されたオブジェクトを返します。 詳細については、「 *OrNullObject のメソッドとプロパティ」を参照してください。

load(options)

オブジェクトの指定されたプロパティを読み込むコマンドを待ち行列に入れます。 プロパティを読み取る前に、context.sync() を呼び出す必要があります。

load(propertyNames)

オブジェクトの指定されたプロパティを読み込むコマンドを待ち行列に入れます。 プロパティを読み取る前に、context.sync() を呼び出す必要があります。

load(propertyNamesAndPaths)

オブジェクトの指定されたプロパティを読み込むコマンドを待ち行列に入れます。 プロパティを読み取る前に、context.sync() を呼び出す必要があります。

set(properties, options)

オブジェクトの複数のプロパティを同時に設定します。 適切なプロパティを持つプレーン オブジェクト、または同じ型の別の API オブジェクトを渡すことができます。

set(properties)

既存の読み込まれたオブジェクトに基づいて、オブジェクトに複数のプロパティを同時に設定します。

toJSON()

API オブジェクトが JSON.stringify() に渡されるときに、より有用な出力を提供するために、JavaScript toJSON() メソッドをオーバーライドします。 (次に、JSON.stringify渡されたオブジェクトの toJSON メソッドを呼び出します)。元の Excel.NamedItem オブジェクトが API オブジェクトであるのに対し、 toJSON メソッドは、元のオブジェクトから読み込まれた子プロパティの浅いコピーを含むプレーンな JavaScript オブジェクト ( Excel.Interfaces.NamedItemData と型指定) を返します。

プロパティの詳細

arrayValues

名前付きアイテムの値と型を含むオブジェクトを返します。

readonly arrayValues: Excel.NamedItemArrayValues;

プロパティ値

注釈

API セット: ExcelApi 1.7

comment

この名前に関連付けられているコメントを指定します。

comment: string;

プロパティ値

string

注釈

API セット: ExcelApi 1.4

context

オブジェクトに関連付けられている要求コンテキスト。 これにより、アドインのプロセスが Office ホスト アプリケーションのプロセスに接続されます。

context: RequestContext;

プロパティ値

formula

名前付きアイテムの数式。 数式は常に等号 ("=") で始まります。

formula: any;

プロパティ値

any

注釈

API セット: ExcelApi 1.7

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/34-named-item/update-named-item.yaml

await Excel.run(async (context) => {
    const sheet = context.workbook.worksheets.getItem("Sample");

    // Get the named item
    const myNamedItem = sheet.names.getItemOrNullObject("MyRange");
    myNamedItem.load("name, formula");
    await context.sync();

    if (myNamedItem.isNullObject) {
        console.log(`There is no named item. Create it with "Add named item for a range" first.`);
    } else {                    
        // Update named item to point to the second range
        myNamedItem.formula = "=Sample!$B$10:$D$14";
        sheet.getRange("B10:D14").select();
        await context.sync();

        console.log(`Just updated the named item "${myNamedItem.name}" -- it's now located here: ${myNamedItem.formula}`);
    }
});

name

オブジェクトの名前。

readonly name: string;

プロパティ値

string

注釈

API セット: ExcelApi 1.1

scope

名前をブックまたは特定のワークシートのどちらにスコープするかを指定します。 指定可能な値は Worksheet、Workbook です。

readonly scope: Excel.NamedItemScope | "Worksheet" | "Workbook";

プロパティ値

Excel.NamedItemScope | "Worksheet" | "Workbook"

注釈

API セット: ExcelApi 1.4

type

名前の数式によって返される値の型を指定します。 詳細は「Excel.NamedItemType」をご覧ください。

readonly type: Excel.NamedItemType | "String" | "Integer" | "Double" | "Boolean" | "Range" | "Error" | "Array";

プロパティ値

Excel.NamedItemType | "String" | "Integer" | "Double" | "Boolean" | "Range" | "Error" | "Array"

注釈

API セット: ExcelApi 1.1 for String,Integer,Double,Boolean,Range,Error;1.7 for Array

value

名前の数式で計算された値を表します。 名前付き範囲の場合は、範囲アドレスが返されます。 この API は #VALUE! を返します。 ユーザー定義の関数を参照する場合は、エラーが Excel UI に表示されます。

readonly value: any;

プロパティ値

any

注釈

API セット: ExcelApi 1.1

valueAsJson

この名前付きアイテムの値の JSON 表現。 NamedItem.value とは異なり、NamedItem.valueAsJson はセル内のすべてのデータ型をサポートします。 たとえば、標準のブール値、数値値、文字列値に加えて、書式設定された数値や Web 画像などがあります。 この API から返されるデータは、常に en-US ロケールに合わせて調整されます。 ユーザーの表示ロケールでデータを取得するには、 NamedItem.valueAsJsonLocal を使用します。

readonly valueAsJson: CellValue | string;

プロパティ値

Excel.CellValue | string

注釈

API セット: ExcelApi 1.16

valueAsJsonLocal

この名前付きアイテムの値の JSON 表現。 NamedItem.value とは異なり、NamedItem.valueAsJsonLocal はセル内のすべてのデータ型をサポートします。 たとえば、標準のブール値、数値値、文字列値に加えて、書式設定された数値や Web 画像などがあります。 この API から返されるデータは、常にユーザーの表示ロケールに合わせて調整されます。 ロケールに関係なくデータを取得するには、 NamedItem.valueAsJson を使用します。

readonly valueAsJsonLocal: CellValue | string;

プロパティ値

Excel.CellValue | string

注釈

API セット: ExcelApi 1.16

visible

オブジェクトが表示されるかどうかを指定します。

visible: boolean;

プロパティ値

boolean

注釈

API セット: ExcelApi 1.1

worksheet

名前付きのアイテムの対象になるワークシートを返します。 アイテムのスコープがブックに対して設定されている場合は、エラーをスローします。

readonly worksheet: Excel.Worksheet;

プロパティ値

注釈

API セット: ExcelApi 1.4

worksheetOrNullObject

名前付きアイテムのスコープが設定されているワークシートを返します。 アイテムのスコープがブックに設定されている場合、このメソッドは isNullObject プロパティが true に設定されたオブジェクトを返します。 詳細については、「 *OrNullObject のメソッドとプロパティ」を参照してください。

readonly worksheetOrNullObject: Excel.Worksheet;

プロパティ値

注釈

API セット: ExcelApi 1.4

メソッドの詳細

delete()

指定された名前を削除します。

delete(): void;

返品

void

注釈

API セット: ExcelApi 1.4

// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/excel/34-named-item/create-and-remove-named-item.yaml

await Excel.run(async (context) => {
    const sheet = context.workbook.worksheets.getItem("Sample");
    const totalName = sheet.names.getItemOrNullObject("TotalAmount");
    totalName.load();
    await context.sync();

    if (totalName.value) {
        totalName.delete();

        // Replace the named item (TotalAmount) with the actual formula for TotalAmount to avoid displaying #NAME in the cell.
        sheet.getRange("D11").values = [["=SUM(ExpensesTable[AMOUNT])"]];
    } else {
        console.log("No named item created for the formula.");
    }

    await context.sync();
});

getRange()

名前に関連付けられている範囲オブジェクトを返します。 名前付きアイテムの型が範囲でない場合、エラーをスローします。

getRange(): Excel.Range;

返品

注釈

API セット: ExcelApi 1.1

// Returns the Range object that is associated with the name.
// Returns `null` if the name is not of type Range.
// Note: This API currently supports only the Workbook scoped items.
await Excel.run(async (context) => { 
    const names = context.workbook.names;
    const range = names.getItem('MyRange').getRange();
    range.load('address');
    await context.sync();

    console.log(range.address);
});

getRangeOrNullObject()

名前に関連付けられている範囲オブジェクトを返します。 名前付きアイテムの型が範囲ではない場合、このメソッドは isNullObject プロパティが true に設定されたオブジェクトを返します。 詳細については、「 *OrNullObject のメソッドとプロパティ」を参照してください。

getRangeOrNullObject(): Excel.Range;

返品

注釈

API セット: ExcelApi 1.4

load(options)

オブジェクトの指定されたプロパティを読み込むコマンドを待ち行列に入れます。 プロパティを読み取る前に、context.sync() を呼び出す必要があります。

load(options?: Excel.Interfaces.NamedItemLoadOptions): Excel.NamedItem;

パラメーター

options
Excel.Interfaces.NamedItemLoadOptions

読み込むオブジェクトのプロパティのオプションを指定します。

返品

load(propertyNames)

オブジェクトの指定されたプロパティを読み込むコマンドを待ち行列に入れます。 プロパティを読み取る前に、context.sync() を呼び出す必要があります。

load(propertyNames?: string | string[]): Excel.NamedItem;

パラメーター

propertyNames

string | string[]

読み込むプロパティを指定するコンマ区切りの文字列または文字列の配列。

返品

await Excel.run(async (context) => { 
    const names = context.workbook.names;
    const namedItem = names.getItem('MyRange');
    namedItem.load('type');
    await context.sync();
    
    console.log(namedItem.type);
});

load(propertyNamesAndPaths)

オブジェクトの指定されたプロパティを読み込むコマンドを待ち行列に入れます。 プロパティを読み取る前に、context.sync() を呼び出す必要があります。

load(propertyNamesAndPaths?: {
            select?: string;
            expand?: string;
        }): Excel.NamedItem;

パラメーター

propertyNamesAndPaths

{ select?: string; expand?: string; }

propertyNamesAndPaths.select は読み込むプロパティを指定するコンマ区切りの文字列であり、 propertyNamesAndPaths.expand は読み込むナビゲーションのプロパティを指定するコンマ区切りの文字列です。

返品

set(properties, options)

オブジェクトの複数のプロパティを同時に設定します。 適切なプロパティを持つプレーン オブジェクト、または同じ型の別の API オブジェクトを渡すことができます。

set(properties: Interfaces.NamedItemUpdateData, options?: OfficeExtension.UpdateOptions): void;

パラメーター

properties
Excel.Interfaces.NamedItemUpdateData

メソッドが呼び出されたオブジェクトのプロパティと同型構造のプロパティを持つ JavaScript オブジェクト。

options
OfficeExtension.UpdateOptions

プロパティ オブジェクトが読み取り専用プロパティを設定しようとした場合にエラーを抑制するオプションを提供します。

返品

void

set(properties)

既存の読み込まれたオブジェクトに基づいて、オブジェクトに複数のプロパティを同時に設定します。

set(properties: Excel.NamedItem): void;

パラメーター

properties
Excel.NamedItem

返品

void

toJSON()

API オブジェクトが JSON.stringify() に渡されるときに、より有用な出力を提供するために、JavaScript toJSON() メソッドをオーバーライドします。 (次に、JSON.stringify渡されたオブジェクトの toJSON メソッドを呼び出します)。元の Excel.NamedItem オブジェクトが API オブジェクトであるのに対し、 toJSON メソッドは、元のオブジェクトから読み込まれた子プロパティの浅いコピーを含むプレーンな JavaScript オブジェクト ( Excel.Interfaces.NamedItemData と型指定) を返します。

toJSON(): Excel.Interfaces.NamedItemData;

返品