Git Product home page Git Product logo

Comments (6)

pauljnav avatar pauljnav commented on May 27, 2024 1

Hi @NoralK (CC: @dfinke)
In VBA, the Range.Offset property represents a range that's offset from the specified range.
I see the same exists in ImportExcel for the $RangeCells object.

Try the following for size:

# Define offset range, omitting row 1.
$offsetRange = $RangeCells.Offset(1, 0)
# Reveal the cell addresses to confirm
$offsetRange | Select-Object Address
$RangeCells | Select-Object Address

from importexcel.

NoralK avatar NoralK commented on May 27, 2024 1

@pauljnav Thank you! for that nudge...I was able to come up with this complete solution:

$xlSourcefile = "./theFile.xlsx"

$data = Import-Csv "./SingleColumnOfDataWithHeaderRow.csv"

$data | Export-Excel $xlSourcefile -WorksheetName "theSheet" `
    -TableStyle None `
    -AutoSize -StartRow 1 -StartColumn 6 `
    -TableName "theTable"

$xl = Open-ExcelPackage $xlSourcefile
$ws = $xl.Workbook.Worksheets["theSheet"]
$TableRange = $ws.Tables["theTable"].Address.Address
# Original Range F1:F50
$RangeCells=$ws.cells[$TableRange]
# Define offset range, omitting row 1
#     however this gives an extra row that we do not want.
# will product F2:F51
$offsetRange = $RangeCells.Offset(1, 0)
# Need F2:F50 - mash it together
$NewTableRange = "$($offsetRange.Start.Address):$($rangecells.End.Address)"
# Get the cells
$RangeWithoutHeaders = $ws.cells[$NewTableRange]
# Add the named range
# F2:F50 
$xl.Workbook.Names.Add("theName", $RangeWithoutHeaders) | Out-Null
# Now I can reference theName[ColumnName] in the entire
#     Workbook where theTable[ColumnName] has issues
Close-ExcelPackage $xl

from importexcel.

dfinke avatar dfinke commented on May 27, 2024

Sorry @NoralK, I have never tried to that nor have I seen it done. I believe you are the first 🎉

from importexcel.

NoralK avatar NoralK commented on May 27, 2024

@dfinke Does this mean you will not look into it?

from importexcel.

dfinke avatar dfinke commented on May 27, 2024

@NoralK not for a while. I have other pressing matters.

from importexcel.

dfinke avatar dfinke commented on May 27, 2024

Glad Open-ExcelPackage and the -PassThru are part of the ImportExcel. Escape hatch to the underlying object model.

Thanks all!

from importexcel.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.