cp-21papExcelCoordinateConversion.psm1
|
function ConvertLettersToColumnNumber { param( [string]$letters ) $columnNumber = 0 for ($i = 0; $i -lt $letters.Length; $i++) { $columnNumber *= 26 $columnNumber += [char]($letters[$i]) - 64 } return $columnNumber } function ConvertFrom-ExcelCellCoordinate { [CmdletBinding()] param( [Parameter(ValueFromPipeline = $true)] [string]$InputObject ) process { $InputObject = $InputObject.ToUpper() if ($InputObject -match '([A-Z]+)(\d+)') { $letters = $matches[1] $columnNumber = ConvertLettersToColumnNumber -letters $letters $rowNumber = $matches[2] $object = @{ Column = $columnNumber Row = $rowNumber } Write-Output $object } else { #Write-Error "Data pas aux normes" $object = @{ Column = 0 Row = 0 } Write-Output $object } } } |