2017-11-07 19 views
0

私のcsvファイルはthis と同じです。空白などはありません。ヘッダーを付けずにdatagridviewを.csvにエクスポートするにはどうすればよいですか?

ご覧のとおり、データヘッダービューを.csv形式でエクスポートする方法が分かりません。私に助言

Private Sub IncomeToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles IncomeToolStripMenuItem.Click 
    Dim saveFileDialog1 As New SaveFileDialog() 

    saveFileDialog1.Filter = "CSV|*.csv" 
    saveFileDialog1.RestoreDirectory = True 

    If saveFileDialog1.ShowDialog() = DialogResult.OK Then 
     Dim incomefile As String = String.Empty 

     For Each column As DataGridViewColumn In Expense.Columns 
      incomefile = incomefile & column.HeaderText & "," 
     Next 

     incomefile = incomefile.TrimEnd(",") 
     incomefile = incomefile & vbCr & vbLf 

     For Each row As DataGridViewRow In Expense.Rows 
      For Each cell As DataGridViewCell In row.Cells 
       incomefile = incomefile & cell.FormattedValue.replace(",", "") & "," 
      Next 
      incomefile = incomefile.TrimEnd(",") 
      incomefile = incomefile & vbCr & vbLf 
     Next 
     System.IO.File.WriteAllText(saveFileDialog1.FileName, incomefile) 
    End If 

    Dim msg1 = "Export Successful" 
    Dim title = "Excel Export" 
    MsgBox(msg1, , title) 
End Sub 

てください:

これは私が私の輸出コードを行っている方法です。何人かは、エクスポートするためにdatatableを使うほうがよいと言いましたが、43時間前にコンピュータプログラミングを学び始めたので、データグリッドビューに入れたデータを宣言してcsvファイルとしてエクスポートする方法はわかりません。

+0

ちょうどSOに参加したので、[ask]と[tour]を読んでください。これを簡単にやり遂げるツールがあります。データを "、"に置き換えると小数点(?)が間違っています。ヘッダー行が必要ない場合は、繰り返し実行してHeaderTextを書き留めてください。データはどのようにDGVに取り込まれましたか?それはユーザーにデータのビューを表示するための単なるコントロールです – Plutonix

答えて

1

これ試してみて、それらの行

For Each column As DataGridViewColumn In Expense.Columns 
    incomefile = incomefile & column.HeaderText & "," 
Next 
+0

ありがとうございました...チュートリアルのビデオから貼り付けたコピーが実際にどのように機能しているのか実際にはわかりませんでした...ありがとう! – Jason

+0

問題はありません。基本はかなり簡単です。それはコンピュータに英語を話すようなものです。貼り付けコードをコピーするときには、コードが何をしているかを理解するようにしてください。それ以外の場合は、ウイルスのソースコードを取得してコンピュータ上で実行するようなものです。 – Chillzy

0

を削除します。

Private Sub BtnExport_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnExport.Click 
     SFD.InitialDirectory = "C:\" 
     SFD.Title = "Save Your File" 
     SFD.Filter = "Microsoft Excel(*.xls)|*.xls|Comma Delimited File(*.csv)|*.Csv" 
     SFD.OverwritePrompt = True 
     SFD.ShowDialog() 
     strFileName = SFD.FileName 
     ' If SFD.ShowDialog() = DialogResult.OK Then 
     If SFD.FilterIndex = 1 Then 
      Call export() 
     Else 
      Call csv() 
     End If 
     ' End If 

    End Sub 

また、この方法で試してください。

Dim numCols As DataGridViewCell 
     Dim sw As New System.IO.StreamWriter("d:\\output.txt") 
     For Each numRows As DataGridViewRow In DataGridView1.Rows 
      Dim intCellCount As Integer = numRows .Cells.Count 
      Dim intCounter As Integer = 1 
      For Each numCols In numRows .Cells() 
       If intCounter <> intCellCount Then 
        sw.Write(numCols .Value.ToString & ",") 
       Else 
        sw.WriteLine(numCols .Value.ToString) 
       End If 
       intCounter += 1 
      Next 
     Next 
関連する問題