André Parreira Posted February 28, 2009 at 07:58 PM Report #247321 Posted February 28, 2009 at 07:58 PM Boas eu ja tive a pesquisar como se ligava o vb.net ao excel, mas nao consigo, pode ser por causa das versoes?' eu ja pesqquise i ja tentei fazer, ir ao project, add reference; COM, e depois nao aparece nehum check button ao lado de cada aplikativo, eu cliko em cima do biblioteca de microsoft excel 5.0 e tb o microsoft excel 12.0 object library. Depois esses 2 aplicativos vao para o RECENT. depois introduzo uma linah de codigo por ex: Imports Microsoft.Office.Interop objApp = New Excel.Application sabem tutoriais para ligar vb.net 2008 express edition ao excel, agradecia tb. Obrigado
Joca Posted February 28, 2009 at 09:15 PM Report #247332 Posted February 28, 2009 at 09:15 PM Ainda não experimentei essa área mas uma pesquisa no fórum retornou alguns resultados. Um dos quais talvez te ajude: http://www.portugal-a-programar.pt/index.php?showtopic=11022
André Parreira Posted February 28, 2009 at 10:47 PM Author Report #247355 Posted February 28, 2009 at 10:47 PM Eu ja tinha visto esse andes de expor a minha duvida. nesse post ele tem o visual basic 2005, eu tenho o vb.net 2008 express edition, tem alguma diferenças significativas? tutoriais da ligaçao vb.net 2008 express edition com o excel agradecia, mas vou pesquisar na mesma, nao se pode parar. obrigado
jpaulino Posted February 28, 2009 at 10:59 PM Report #247360 Posted February 28, 2009 at 10:59 PM Vê este exemplo, e embora exporte dados de uma DataGridView, mostra como funciona. Exportar DataGridView para Excel
André Parreira Posted February 28, 2009 at 11:23 PM Author Report #247362 Posted February 28, 2009 at 11:23 PM Eu tb estou com problemas nos imports, nos 3. Imports Microsoft.Office.Interop Imports System.Threading.Thread Imports System.Globalization tera a ver km a excel, ke e o micrsoft office excel 2007, e esta em portugues, o vb.net express edition esta em ingles, pode estar ai o erro??? Obrigado
jpaulino Posted March 1, 2009 at 12:20 AM Report #247376 Posted March 1, 2009 at 12:20 AM Já experimentaste Imports Excel ...
André Parreira Posted March 2, 2009 at 09:41 AM Author Report #247548 Posted March 2, 2009 at 09:41 AM Ja consegui meter imports 😛 agora o unico erro que da e nesta linha de codigo Public Sub ExportToExcel(ByVal dgvName As DataGridView, ByVal [option] As xlsOption, Optional ByVal fileName As String = "") é o unico erro que da Obrigado
José Lopes Posted March 2, 2009 at 09:46 AM Report #247551 Posted March 2, 2009 at 09:46 AM Ele não reconhece a propriedade "xlsOption" Quando te pedirem peixe.... ensina-os a Pescar!!Hum..lálálálá!!
jpaulino Posted March 2, 2009 at 09:50 AM Report #247552 Posted March 2, 2009 at 09:50 AM José Lopes, o [option] está correcto porque como é uma keyword tem de ficar dessa forma (ou utilizar outro nome para a variável) André Parreira, Mostra lá o teu código ... o pessoal têm de se habituar a dar mais informação/mostrar código e a dizer qual a mensagem de erro que dá. O pessoal não é bruxo. De qualquer maneira não vais exportar uma datagridview, pois não ?
José Lopes Posted March 2, 2009 at 09:52 AM Report #247554 Posted March 2, 2009 at 09:52 AM sim...já percebi essa parte jpaulino...e corrigi o meu post... de qq maneira... comm tanto nome possível...lol pk usar uma palavra reservada... Quando te pedirem peixe.... ensina-os a Pescar!!Hum..lálálálá!!
jpaulino Posted March 2, 2009 at 10:01 AM Report #247559 Posted March 2, 2009 at 10:01 AM sim...já percebi essa parte jpaulino...e corrigi o meu post... de qq maneira... comm tanto nome possível...lol pk usar uma palavra reservada... Porque é mais sugestivo ... sei lá, não me lembrei de outra 😛 Ele não reconhece a propriedade "xlsOption" Isso, sim, se ele não colocou a enumeração.
José Lopes Posted March 2, 2009 at 10:07 AM Report #247560 Posted March 2, 2009 at 10:07 AM ok...so agora é que vi o teu artigo... de facto... falta a enumeração... outra alternativa se ele não o quiser fazer será passar isso através de um outro tipo de variável, por exemplo um boleano... mas sim... com os enums.. tem outra classe ;-) Quando te pedirem peixe.... ensina-os a Pescar!!Hum..lálálálá!!
André Parreira Posted March 2, 2009 at 10:11 AM Author Report #247562 Posted March 2, 2009 at 10:11 AM Para conseguir ter mais umas bases para depois seguir o meu programa, tentei fazer o que estava no link acima http://www.portugal-a-programar.pt/index.php?showtopic=11022 da erro logo no inicio, vou meter aqui a parte que da erro. Imports Microsoft.Office.Interop Imports Microsoft.Office.Interop.Excel Sub exportarDados() ------------------ da erro 'Inicia o Excel e abre o documento que desejamos Dim excelApp As New Microsoft.Office.Interop.Excel.Application Dim excelBook As Microsoft.Office.Interop.Excel.Workbook = excelApp.Workbooks.Open(System.Windows.Forms.Application.StartupPath & "\plantilla.xls") Dim excelWorksheet As Microsoft.Office.Interop.Excel.Worksheet = CType(excelBook.Worksheets(1), Microsoft.Office.Interop.Excel.Worksheet) 'Torna o Excel invisível ao usuário até que a planilha seja preenchida excelApp.Visible = False obrigado
José Lopes Posted March 2, 2009 at 10:35 AM Report #247572 Posted March 2, 2009 at 10:35 AM Experimenta Imports Excel Sub exportarDados() '------------------ da erro 'Inicia o Excel e abre o documento que desejamos Dim excelApp As New Excel.Application Dim excelBook As Excel.Workbook = excelApp.Workbooks.Open(System.Windows.Forms.Application.StartupPath & "\plantilla.xls") Dim excelWorksheet As Excel.Worksheet = CType(excelBook.Worksheets(1), Excel.Worksheet) 'Torna o Excel invisível ao usuário até que a planilha seja preenchida excelApp.Visible = False End Sub Eu testei aqui dessa forma.... de funcionou perfeitamente Quando te pedirem peixe.... ensina-os a Pescar!!Hum..lálálálá!!
André Parreira Posted March 2, 2009 at 11:05 AM Author Report #247579 Posted March 2, 2009 at 11:05 AM Meti esse codigo num botao, nao deu erro, mas nao deu nada, como era de esperar devido a ter pouco codigo ainda, mas agora com o codigo todo. Imports Microsoft.Office.Interop.Excel Imports Microsoft.Office.Interop Imports Excel Public Class Form1 Sub exportarDados() 'Inicia o Excel e abre o documento que desejamos Dim excelApp As New Excel._ExcelApplication Dim excelBook As Excel.Workbook = excelApp.Workbooks.Open(System.Windows.Forms.Application.StartupPath & "\plantilla.xls") Dim excelWorksheet As Excel.Worksheet = CType(excelBook.Worksheets(1), Excel.Worksheet) 'Torna o Excel invisível ao usuário até que a planilha seja preenchida excelApp.Visible = False With excelWorksheet 'Formata os cabeçalhos das células .Range("B7").Value = "Código" .Range("B7").Font.Bold = True .Range("B7").ColumnWidth = 10 .Range("C7").Value = "Endereço" .Range("C7").Font.Bold = True .Range("C7").ColumnWidth = 35 .Range("D7").Value = "País" .Range("D7").Font.Bold = True .Range("D7").ColumnWidth = 15 .Range("E7").Value = "Data" .Range("E7").Font.Bold = True .Range("E7").ColumnWidth = 10 'define o indice da célula da qual iremos extrair os dados Dim i As Integer = 7 'Preenche a planilha Excel 'agora temos que colocar só o que necessitamos Try .Range("B" & i.ToString).Value = "1" .Range("C" & i.ToString).Value = "Rua 123" .Range("D" & i.ToString).Value = "Portugal" .Range("E" & i.ToString).Value = "19-04-1982" Catch ex As Exception MsgBox(ex.Message) End Try 'Torna o Excel visível excelApp.Visible = True excelApp.SaveWorkspace(makeFileName()) ´--------- da erro no makeFileName excelBook.Close(False) excelApp = Nothing System.Runtime.InteropServices.Marshal.ReleaseComObject(excelApp) End With End Sub End Class Obrigado
José Lopes Posted March 2, 2009 at 11:52 AM Report #247602 Posted March 2, 2009 at 11:52 AM Coloquei aqui a funcionar.....com o codigo que tenho em baixo... Fiz algumas observações Sub exportarDados() 'Inicia o Excel e abre o documento que desejamos Dim excelApp As New Excel.Application 'A linha de baixo obriga a que o ficheiro exista... é mesmo isso que queres? Dim excelBook As Excel.Workbook = excelApp.Workbooks.Open("c:\plantilla.xls") Dim excelWorksheet As Excel.Worksheet = CType(excelBook.Worksheets(1), Excel.Worksheet) 'Torna o Excel invisível ao usuário até que a planilha seja preenchida excelApp.Visible = False With excelWorksheet 'Formata os cabeçalhos das células .Range("B7").Value = "Código" .Range("B7").Font.Bold = True .Range("B7").ColumnWidth = 10 .Range("C7").Value = "Endereço" .Range("C7").Font.Bold = True .Range("C7").ColumnWidth = 35 .Range("D7").Value = "País" .Range("D7").Font.Bold = True .Range("D7").ColumnWidth = 15 .Range("E7").Value = "Data" .Range("E7").Font.Bold = True .Range("E7").ColumnWidth = 10 'define o indice da célula da qual iremos extrair os dados Dim i As Integer = 7 'Preenche a planilha Excel 'agora temos que colocar só o que necessitamos Try .Range("B" & i.ToString).Value = "1" .Range("C" & i.ToString).Value = "Rua 123" .Range("D" & i.ToString).Value = "Portugal" .Range("E" & i.ToString).Value = "19-04-1982" Catch ex As Exception MsgBox(ex.Message) End Try 'Torna o Excel visível excelApp.Visible = True 'Para qye serve isto? 'excelApp.SaveWorkspace("c:\xpto.xls") '--------- da erro no makeFileName excelBook.Close(True) 'Aqui estas a destruir o objecto antes de o libertar, logo a linha de baixo dava erro. alterei a ordem System.Runtime.InteropServices.Marshal.ReleaseComObject(excelApp) excelApp = Nothing End With End Sub Quando te pedirem peixe.... ensina-os a Pescar!!Hum..lálálálá!!
André Parreira Posted March 2, 2009 at 12:37 PM Author Report #247620 Posted March 2, 2009 at 12:37 PM ja Konsegui. Obrigado pela ajuda, agora vou continuar a pesquisar para concluir o programa.
jpaulino Posted March 2, 2009 at 12:41 PM Report #247623 Posted March 2, 2009 at 12:41 PM ja Konsegui. Obrigado pela ajuda, agora vou continuar a pesquisar para concluir o programa. Mas este problema já está resolvido, certo ? Se tiveres outras duvidas crias um novo topico.
André Parreira Posted March 2, 2009 at 02:37 PM Author Report #247640 Posted March 2, 2009 at 02:37 PM ja esta resolvido Obrigado
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now