openxlsx icon indicating copy to clipboard operation
openxlsx copied to clipboard

fillMergedCells fails in NamedRegions

Open Skepe opened this issue 3 years ago • 0 comments

Dear ycphs,

This is the requested issue transfer from https://github.com/awalker89/openxlsx/issues/530. As described there as well it might be related to another open issue openxlsx/issues/499. Thank you for maintaining this package! Sorry for the delay... :-)

Expected Behavior

I created a named region "NameReg" -> A1:D3 with some merged cells inside in an excel file NamedMergedCell_Example.xlsx.

If I access this region without the name option it workes nicely, all merged cells are recognized and each cell is filled with the value of the merged cell: dput(openxlsx::read.xlsx("NamedMergedCell_Example.xlsx", fillMergedCells = TRUE)) structure(list(Hello = c("A", "B"), World = c(1, 4), World = c(2, 4), World = c(3, 4)), row.names = 1:2, class = "data.frame")

This should also work if I use the named Region

dput(openxlsx::read.xlsx("NamedMergedCell_Example.xlsx", namedRegion = "NameReg",fillMergedCells = TRUE))

but it does not.

Actual Behavior

dput(openxlsx::read.xlsx("NamedMergedCell_Example.xlsx", namedRegion = "NameReg",fillMergedCells = TRUE))

leads to structure(list(Hello = c("A", "B"), World = c(1, 4), X3 = c(2, NA), X4 = c(3, NA)), row.names = 1:2, class = "data.frame")

The merged cell is not resolved. Only the first cell gets its value all others are NA.

Steps to Reproduce the Problem

NamedMergedCell_Example.xlsx

1. Put NamedMergedCell_Example.xlsx in your working directory.

2. Execute dput(openxlsx::read.xlsx("MergedCell_Example.xlsx", namedRegion = "NameReg", fillMergedCells = TRUE))

sessionInfo()

  • Version of openxlsx: 4.2.3
  • Version of R: 4.0.5

Skepe avatar Jan 14 '22 15:01 Skepe