因此,我設法創建了一個代碼來將串列框值復制并粘貼到新創建的 Excel 檔案中。問題是,我將它們全部連接起來并用逗號分隔。它作業正常,但由于它是如何匯出的,所以我必須使用 Excel 文本到列功能來放置我想要的資料。
這是代碼:
Private Sub button_Export_AMAT_Click()
Dim i As Integer
Dim n As Integer
Dim strLine As String
Set fs = CreateObject("Scripting.FileSystemObject")
Set a = fs.CreateTextFile("\\yvavm301\Commun\CF_GDC\base de dados a trabalhar\AM_AT.csv", True)
For i = 0 To Me.List_AM_AT.ListCount - 1
For n = 0 To Me.List_AM_AT.ColumnCount - 1
strLine = strLine & """" & Me.List_AM_AT.Column(n, i) & ""","
Next n
strLine = Left(strLine, Len(strLine) - 1)
a.writeline (strLine)
strLine = ""
Next i
MsgBox "Your file is exported"
End Sub
我的問題是:是否可以為類似的表匯出類似的內容,即。具有相同數量的列并使用正確的值填充它們?
必須在此處進行更改(見下文),對嗎?
strLine = strLine & """" & Me.List_AM_AT.Column(n, i) & ""","
a.writeline (strLine)
我試過以下沒有運氣:
strLine = Me.List_AM_AT.Column(n, i)
a.cells(i,n).writeline (strLine)
有誰知道該怎么做?
uj5u.com熱心網友回復:
正如我在評論中所說,您可以在代碼中創建一個 Excel 檔案并將值寫入該檔案。現在,您使用代碼創建一個文本檔案,這會導致您在帖子中描述的問題(文本助手等)
Private Sub button_Export_AMAT_Click()
Dim i As Integer
Dim n As Integer
' You might need to add a reference to Excel if your host application is Access
' Extra/Reference and select Microsoft Excel Object Library
Dim xl As Excel.Application
Set xl = New Excel.Application
Dim wkb As Workbook
Set wkb = xl.Workbooks.Add
Dim wks As Worksheet
Set wks = wkb.Sheets(1)
'Dim strLine As String
'Set fs = CreateObject("Scripting.FileSystemObject")
'Set a = fs.CreateTextFile("\\yvavm301\Commun\CF_GDC\base de dados a trabalhar\AM_AT.csv", True)
For i = 0 To Me.List_AM_AT.ListCount - 1
For n = 0 To Me.List_AM_AT.ColumnCount - 1
wks.Cells(i 1, n 1).Value = Me.List_AM_AT.Column(n, i)
'strLine = strLine & """" & Me.List_AM_AT.Column(n, i) & ""","
Next n
'
' strLine = Left(strLine, Len(strLine) - 1)
' a.writeline (strLine)
' strLine = ""
Next i
wkb.SaveAs "D:\TMP\EXPORT.XLSX" ' Adjust accordingly
wkb.Close False
xl.Quit
MsgBox "Your file is exported"
End Sub
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/468360.html
