Back to Top

プログラムの覚書

VB.NET NPOI名前付きセルの範囲を取得する

名前付きセルの範囲を取得する方法を記載します。

名前付きセルの範囲を取得することにより、セルの開始位置、行数、列数などが取得出来ます。

名前付きセルを設定する

'ブックを作成(xlsx形式)
Dim book As IWorkbook = New XSSFWorkbook()

'シートを作成
Dim sheet1 As ISheet = book.CreateSheet("Sheet1")

'セルの範囲に名前を設定する
Dim namedRange As XSSFName = book.CreateName()
namedRange.NameName = "list1"
namedRange.RefersToFormula = "Sheet1!$A$1:$A$3"

 

名前付きセルの範囲を取得する

Dim Name As XSSFName = book.GetName("list1")

'名前付きセルの範囲を取得する
Dim address As CellRangeAddress = CellRangeAddress.ValueOf(Name.RefersToFormula())

'セルの開始行位置
Dim frow = address.FirstRow

'セルの開始列位置
Dim fcol = address.FirstColumn

'セルの終了列位置
Dim lrow = address.LastRow

'セルの終了列位置
Dim lcol = address.LastColumn

 

Posted in NPOI | Leave a reply

VB.NET NPOIセルをコピーする

セルをコピーする方法を記載します。

セルをコピーする

Dim sheet1 As ISheet = book.GetSheet("Sheet1")

'コピー元
Dim row1 As XSSFRow = sheet1.GetRow(0)

'コピー先
Dim row2 As XSSFRow = sheet1.CreateRow(5)

'内容のコピー
row2.CreateCell(3).SetCellValue(row1.GetCell(0).StringCellValue())

'属性のコピー
row2.CreateCell(3).CellStyle = row1.GetCell(0).CellStyle()

 

 

Posted in NPOI | Leave a reply