在程序中用命令导出Excel时每个单元格显示数据正确,但点单元格时在Excel里面显示前面有一个单引号,这是不是Excel的一种文件格式,
在我程序中导入时如果带有单引号的完全正常,但我新建Excel文件时总是提示Sheet找不到,这是怎么回事??
请高手解答 ,谢谢!!
还有这个问题:
http://expert.csdn.net/Expert/topic/2954/2954411.xml?temp=.1752436

解决方案 »

  1.   

    /////////显示正常  点单元格有单引号是:
    该单元格所在列是字符格式   即:有时候该单元格的数据第一个字符是0  如果不设置成字符格式,0将打不出来
    提示sheet找不到?    什么意思   不太明白
    show your code!
      

  2.   

    把exlel当作数据库来读
    定义函数如下:
    Public Function Read_Excel(ByVal sFile As String) As ADODB.Recordset      On Error GoTo fix_err
          Dim rs As ADODB.Recordset
          Set rs = New ADODB.Recordset
          Dim sconn As String      rs.CursorLocation = adUseClient
          rs.CursorType = adOpenKeyset
          rs.LockType = adLockBatchOptimistic      sconn = "DRIVER=Microsoft Excel Driver (*.xls);" & "DBQ=" & sFile
          rs.Open "SELECT * FROM [sheet1$]", sconn
          Set Read_Excel = rs
          Set rs = Nothing
          Exit Function
    fix_err:
          Debug.Print Err.Description + " " + _
                      Err.Source, vbCritical, "Import"
          Err.Clear
    End Function只要调用此含数即可:
    Private Sub Command5_Click()
     
     Set rsyl = Read_Excel("d:\a.xls")
      Set TDBGrid2.DataSource = rsyl
    End Sub
      

  3.   

    是我把"$"的位置加错了:(to yinweihong(yige) :
    怎么将整个Sheet中的每个单元格都设成字符格式呢,就是点单元格时在上方显示它的值时加上单引号
      

  4.   

    xsheet.Columns("A:A").NumberFormatLocal = "@"    '将第A列设置成文本型
      

  5.   

    这样是设置成文本型了,但是点击单元格时并不会在前面加上单引号,所以我用程序导入数据时会将没有加单引号的漏掉!!:(
    有没有什么好的办法,我导入数据用的方法是:
    g_genConn.Execute "select * into temp from [excel 8.0;database=c:\11.xls].[sheet1$]"