Boa tarde, alguém já fez algo parecido ou poderia me informar se existe a possibilidade de realizar a leitura de uma planilha excel, e pegar o valor de uma determinada coluna, gerando uma outra planilha?
Se alguma pergunta ou resposta lhe foi útil, não deixe de dar seu voto positivo!
Boa tarde, alguém já fez algo parecido ou poderia me informar se existe a possibilidade de realizar a leitura de uma planilha excel, e pegar o valor de uma determinada coluna, gerando uma outra planilha?
Olá, Já é possível criar uma planilha do excel no formato xlsx usando a função FwPrinterXlsx
Até onde sei, hoje o Protheus só permite a leitura de planilhas do tipo csv. Para isso, você pode utilizar a classe FwFileReader.
Segue um exemplo:
User Function XLECSV
Local nI := 0
Local cLine := ''
Local aLines := {}
Local aItens := {}
Local oFile := Nil
oFile := FwFileReader():New('c:\temp\planilha.csv')
If(oFile:Open())
// pego todas as linhas do arquivo
aLines := oFile:GetAllLines()
oFile:Close()
Else
ConOut('Não foi possível abrir o arquivo')
EndIf
// Verifica se o arquivo possui linhas
If(Len(aLines) > 0)
// Percorre as linhas do arquivo
For nI := 1 To Len(aLines)
// obtem a linha atual do arquivo
cLine := aLines[nI]
// quebra a linha atual em um array
aItens := StrTokArr(cLine, ';')
// efetue seu processamento utilizando a variávei aItens
Next nI
EndIf
Return
Uma vez lida sua planilha csv, você pode criar uma planilha xml ou xlsx usando as classes FwMsExcelEx e FwMsExcelXlsx respectivamente.
Agradeço pela ajuda, ajudou bastante
— vhugobf 14 de Jul de 2023