Usuário com melhor resposta
Abrir arquivo dentro de projeto pasta resources VB.Net

Pergunta
-
Bom dia pessoal, preciso de uma ajuda....
Queria abrir um arquivo excel para ser editado pelo Vb.net, porém queria abrir este arquivo da pasta Resources dentro do projeto.
Um código que já funciona:
xlWorkBook = xlApp.Workbooks.Open("C:\dados\Postos.xlsx")
xlApp.Visible = TruePorém queria um código assim:
xlWorkBook = xlApp.Workbooks.Open(My.Resources.Postos.xlsx)
xlApp.Visible = TrueNesse código desejado ele retorna erro de string. como faço para conseguir abrir um arquivo da pasta resources?
Desde já agradeço.
Respostas
-
Bom dia,
Eu tive muitos problemas usando direto o framework, um deles eh que força o usuario a ter o Office, então pesquisei bastante e encontrei uma dll muito boa, que não necessita do pacote do Office pra manipular qualquer aqui deles, chama Aspose, segue o trecho do codigo que uso pra manipular o xlsx.
Public Sub DoExcelToImage(ByVal nomeExcel As String, ByVal folder As String) Try Dim xlsDoc As Workbook = Nothing Dim xls As New IO.FileInfo(nomeExcel) Dim loadOption As Aspose.Cells.LoadOptions = Nothing 'Verifica a extensão do arquivo excel informado Select Case xls.Extension.ToLower Case ".xls" loadOption = New Aspose.Cells.LoadOptions(Aspose.Cells.LoadFormat.Excel97To2003) Case ".xlsx" loadOption = New Aspose.Cells.LoadOptions(Aspose.Cells.LoadFormat.Xlsx) Case ".ods" loadOption = New Aspose.Cells.LoadOptions(Aspose.Cells.LoadFormat.ODS) End Select xlsDoc = New Workbook(nomeExcel, loadOption) If Not IO.Directory.Exists(IO.Path.Combine(clsMetodosFixos.PathSys, "Files\" & folder & "\Original")) Then IO.Directory.CreateDirectory(IO.Path.Combine(clsMetodosFixos.PathSys, "Files\" & folder & "\Original")) End If 'Gerar PDF do excel xlsDoc.Save(IO.Path.Combine(clsMetodosFixos.PathSys, "Files\" & folder & "\Original\" & xls.Name.Replace(xls.Extension, "") & ".pdf"), Aspose.Cells.SaveFormat.Pdf) 'Gerar Imagem do PDF GhostscriptSharp.GhostscriptWrapper.GenerateOutput(IO.Path.Combine(clsMetodosFixos.PathSys, "Files\" & folder & "\Original\" & xls.Name.Replace(xls.Extension, "") & ".pdf"), IO.Path.Combine(clsMetodosFixos.PathSys, "Files\" & folder & "\" & xls.Name.Replace(xls.Extension, "") & "_%d.jpg"), settings) Catch ex As Exception End Try End Sub
Vlw, espero ter ajudado.
- Marcado como Resposta renancapano quarta-feira, 25 de julho de 2018 01:10
Todas as Respostas
-
-
Bom dia,
Eu tive muitos problemas usando direto o framework, um deles eh que força o usuario a ter o Office, então pesquisei bastante e encontrei uma dll muito boa, que não necessita do pacote do Office pra manipular qualquer aqui deles, chama Aspose, segue o trecho do codigo que uso pra manipular o xlsx.
Public Sub DoExcelToImage(ByVal nomeExcel As String, ByVal folder As String) Try Dim xlsDoc As Workbook = Nothing Dim xls As New IO.FileInfo(nomeExcel) Dim loadOption As Aspose.Cells.LoadOptions = Nothing 'Verifica a extensão do arquivo excel informado Select Case xls.Extension.ToLower Case ".xls" loadOption = New Aspose.Cells.LoadOptions(Aspose.Cells.LoadFormat.Excel97To2003) Case ".xlsx" loadOption = New Aspose.Cells.LoadOptions(Aspose.Cells.LoadFormat.Xlsx) Case ".ods" loadOption = New Aspose.Cells.LoadOptions(Aspose.Cells.LoadFormat.ODS) End Select xlsDoc = New Workbook(nomeExcel, loadOption) If Not IO.Directory.Exists(IO.Path.Combine(clsMetodosFixos.PathSys, "Files\" & folder & "\Original")) Then IO.Directory.CreateDirectory(IO.Path.Combine(clsMetodosFixos.PathSys, "Files\" & folder & "\Original")) End If 'Gerar PDF do excel xlsDoc.Save(IO.Path.Combine(clsMetodosFixos.PathSys, "Files\" & folder & "\Original\" & xls.Name.Replace(xls.Extension, "") & ".pdf"), Aspose.Cells.SaveFormat.Pdf) 'Gerar Imagem do PDF GhostscriptSharp.GhostscriptWrapper.GenerateOutput(IO.Path.Combine(clsMetodosFixos.PathSys, "Files\" & folder & "\Original\" & xls.Name.Replace(xls.Extension, "") & ".pdf"), IO.Path.Combine(clsMetodosFixos.PathSys, "Files\" & folder & "\" & xls.Name.Replace(xls.Extension, "") & "_%d.jpg"), settings) Catch ex As Exception End Try End Sub
Vlw, espero ter ajudado.
- Marcado como Resposta renancapano quarta-feira, 25 de julho de 2018 01:10