tagCANDY CGI VBレスキュー(花ちゃん) - VBレスキュー(花ちゃん)の投稿サンプル用掲示板 - Visual Basic 6.0 VB2005 VB2010
VB2005用トップページへVBレスキュー(花ちゃん)のトップページVB6.0用のトップページ
VBレスキュー(花ちゃん)の投稿サンプル用掲示板
     サンプル投稿用掲示板  VB2005 〜 用トップページ  VB6.0 用 トップページ
MSFlexgridを使ってのCSVファイル読み書き色々(VB6.0)_1 ( No.1 )  [親スレッドへ]
日時: 2009/12/28 10:29
名前: 花ちゃん

***********************************************************************************
* カテゴリー:[ファイル入出力][グリッド関係][]                                    *
* キーワード:CSV,MSHFlexgrid,,,,                                                 *
***********************************************************************************
-----------------------------------------------------------------------------------
Re: MS(H)Flexgrid→CSVファイル.. - 花ちゃん 2007/09/13-21:24 No.10192
-----------------------------------------------------------------------------------

> ダブルクォーテーション(")がないと、CSVをEXCELで開いた際に
> 数値型だとおかしく表示されるかな?と思っておりました・・・。

"88" としてもExcelで自動的に型を判断するので、数値になってしまいます。
http://hanatyan.sakura.ne.jp/vbhlp/Excel11.htm
http://hanatyan.sakura.ne.jp/patio/read.cgi?mode=view2&f=128&no=12

全て、"" として保存するなら下記で。

Private Sub Command1_Click()
'   On Error Resume Next
   Dim i         As Long
   Dim j         As Long
   Dim intFileNo As Integer
   Dim TxtLine   As String
   intFileNo = FreeFile
   Open App.Path & "\Test.csv" For Output As #intFileNo
   With MSFlexGrid1
      For i = 0 To .Rows - 1
         TxtLine = ""
         For j = 0 To .Cols - 1
            '手動で列幅を設定した場合0に上手くならないので大きめに設定
            If .ColWidth(j) > 30 Then
               TxtLine = TxtLine & Chr$(34) & CStr(.TextMatrix(i, j)) & Chr$(34) & ","
            End If
         Next j
         If Right$(TxtLine, 1) = "," Then
            TxtLine = Left$(TxtLine, Len(TxtLine) - 1)
            Print #intFileNo, TxtLine
         End If
      Next i
   End With
   Close #intFileNo
   MsgBox "保存しました"
End Sub

---------------------------------------------------------------------------
全ての出力データに  ""(Chr$(34)) が付加されます。




 [スレッド一覧へ] [親スレッドへ]