# NamedRangeEditor

<figure><img src="https://67932947-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FHWsslZpYESUXxPccoyig%2Fuploads%2Fgit-blob-fd25e4669d3980616fe0dce045e91dc73858fe9e%2Fimage.png?alt=media" alt=""><figcaption><p>Create or edit named ranges</p></figcaption></figure>

<pre class="language-tsx" data-overflow="wrap"><code class="lang-tsx">import { CanvasGrid, NamedRangeEditor } from "@rowsncolumns/spreadsheet"
import { useSpreadsheetState } from "@rowsncolumns/spreadsheet-state"

const App = () => {
  const activeSheetId = 1
<strong>  const { getSheetName, onCreateNamedRange, onUpdateNamedRange } = useSpreadsheetState({
</strong>    ...
  })
  return (
    &#x3C;>
      &#x3C;CanvasGrid
      />
      &#x3C;NamedRangeEditor
        sheetId={activeSheetId}
        rowCount={rowCount}
        columnCount={columnCount}
        getSheetName={getSheetName}
        onCreateNamedRange={onCreateNamedRange}
        onUpdateNamedRange={onUpdateNamedRange}
      />
    &#x3C;/>
  )
}
</code></pre>
