我在方法一种写了个CSV文件的标题头
要求在方法二中写CSV文件内容 方法一FileNo1 = FreeFile()
Open csv1Path For Output As #FileNo1
Print #FileNo1, "编号" & "," & "姓名" & "," & "性别" & "," & "年龄"查询到数据,假如在方法二中 续写如下Print #FileNo1, "001" & "," & "张三" & "," & "男" & "," & "20"则方法二无法识别#FileNo1 
要是再方法二中重新用 Open csv1Path For Output As #FileNo1
则表头会消失
而客户要求  内容和表头放在两个方法里   请问怎么实现   可以把#FileNo1 作为参数传过来么  用什么类型注明:不要写两次表头

解决方案 »

  1.   

    最最简单的方法就是写成两个文件,最后用DOS命令合并:
    C:\COPY C:\1.CSV + C:\2.CSV C:\3.CSV
    用SHELL调用BAT,或者SHELL + CMD + 命令
    都可以
      

  2.   

    当然,一次写文件也非常非常简单:
    开头你写:
    Print   #FileNo1,   "编号"   &   ","   &   "姓名"   &   ","   &   "性别"   &   ","   &   "年龄" 
    在VB中有一种变量类型叫做“字符串”
    DIM SS AS STRING
    SS="编号"   &   ","   &   "姓名"   &   ","   &   "性别"   &   ","   &   "年龄" & CHR(13)
    然后你后面
    SS= SS & "001"   &   ","   &   "张三"   &   ","   &   "男"   &   ","   &   "20"  & CHR(13)
    再有就再继续。
    最后写:
    Print #FileNo1,SS
    就可以了不过我记忆中用PRINT写文件似乎会自动加引号的吧,不是很妥当。
      

  3.   

    重新用   Open   csv1Path   For   Output   As   #FileNo1 
    则表头会消失 
    ------------------------
    哪你就用
    Open   csv1Path   For   append   As   #FileNo1 
    表头就不会消失了