Sportsman18 Posted June 30, 2018 at 04:05 PM Report #611179 Posted June 30, 2018 at 04:05 PM Boas, este é o meu primeiro tópico neste fórum. Então é o seguinte, numa fase final do processo do correr do meu programa, tenho uma datagridview com dados e quando carrego no botão , passa os dados da DGV para o excel. O código que uso é este: If DataGridView1.Rows.Count > 0 Then Dim wapp As Microsoft.Office.Interop.Excel.Application Dim wsheet As Microsoft.Office.Interop.Excel.Worksheet Dim wbook As Microsoft.Office.Interop.Excel.Workbook wapp = New Microsoft.Office.Interop.Excel.Application wapp.Visible = True wbook = wapp.Workbooks.Add() wsheet = wbook.ActiveSheet Dim iX As Integer Dim iY As Integer Dim iC As Integer For iC = 0 To DataGridView1.Columns.Count - 1 wsheet.Cells(1, iC + 1).Value = DataGridView1.Columns(iC).HeaderText wsheet.Cells(1, iC + 1).Font.Bold = True Next For iX = 0 To DataGridView1.Rows.Count - 1 For iY = 0 To DataGridView1.Columns.Count - 1 wsheet.Cells(iX + 2, iY + 1).value = DataGridView1(iY, iX).Value Next Next wsheet.Columns.AutoFit() End If Onde o erro aparece é nesta parte do código: (...) For iX = 0 To DataGridView1.Rows.Count - 1 For iY = 0 To DataGridView1.Columns.Count - 1 wsheet.Cells(iX + 2, iY + 1).value = DataGridView1(iY, iX).Value <-- É nesta linha que dá erro. Next Next (...) Mensagem do erro. ---------------------- Aproveito este tópico para perguntar se alguém sabe como faço com que dados apareçam por baixo e não ao lado como aparece nesta imagem? O código usado para guardar o dado no ficheiro texto é este: (...) If CB_tercaadicionar.Checked Then My.Computer.FileSystem.WriteAllText("D:\Terca_Feira.txt", TB_Adicionarhora.Text, True) My.Computer.FileSystem.WriteAllText("D:\numhora_Terca_Feira.txt", TB_numhora.Text, True) End If (...) Obrigado!
miglaranjeira Posted July 1, 2018 at 09:02 AM Report #611184 Posted July 1, 2018 at 09:02 AM Olá Pelo que percebi do erro, necessitas de esperar que o IDE de receção de dados esteja pronto a recebe-los. Sugestão: 1º Para teres a certeza que é este o problema, separa o código em dois botoes e aguarda um pouco até executar a função de escrita 2º Se for assim, sugiro a dupla de Async, Await. Cumprimentos
Sportsman18 Posted July 2, 2018 at 08:35 PM Author Report #611191 Posted July 2, 2018 at 08:35 PM Em 01/07/2018 às 10:02, miglaranjeira disse: Olá Pelo que percebi do erro, necessitas de esperar que o IDE de receção de dados esteja pronto a recebe-los. Sugestão: 1º Para teres a certeza que é este o problema, separa o código em dois botoes e aguarda um pouco até executar a função de escrita 2º Se for assim, sugiro a dupla de Async, Await. Cumprimentos Boas, só agora vi a mensagem, entretanto encontrei outro código e funciona a 100%. O único problema que falta resolver é a parte do ficheiro texto. Quando no programa adiciono dados, esses dados aparecem assim: dadodado e não assim: dado dado No primeiro post coloquei o código que uso para adicionar dados.
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