首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >访问VBA -在Excel中向单元格添加编号

访问VBA -在Excel中向单元格添加编号
EN

Stack Overflow用户
提问于 2016-04-20 09:40:56
回答 1查看 133关注 0票数 0

我正在导出到Excel,我需要在单元格前面插入数字,这些单元格中都有数字。这是我的完整代码:

代码语言:javascript
复制
Private Sub cmdExport_Click()

Dim Results  As Recordset
Dim Numbering  As Integer

Dim FileName As String
Dim FilePath As String

Dim wb As Excel.Workbook
Dim XcelFile As Excel.Application

FileName = "TEST" & Format(Date, "dd/mm/yyyy") & ".xlsx"

FilePath = CurrentProject.Path & "\" & FileName

 Set XcelFile = New Excel.Application

 Set wb = XcelFile.Workbooks.Add

 Set Results  = Forms![MyForm].Form.RecordsetClone

   With wb

      XcelFile.ScreenUpdating = False

      For Numbering = 0 To Results.Fields.Count - 1
      XcelFile.Cells(1, Numbering + 1).Value = Results.Fields(Numbering).Name
      Next Numbering

      Results.MoveFirst
      XcelFile.Range("A2").CopyFromRecordset Results

     For Each cell In XcelFile.Range("A:A")
     cell.Value = "100" & cell.Value
     Next cell

      .SaveAs FileName:=FilePath, FileFormat:=51
      XcelFile.ScreenUpdating = True

   End With

  wb.Close
  Set XcelFile = Nothing

  End Sub

如你所见,我试过这样做:

代码语言:javascript
复制
For Each cell In XcelFile.Range("A:A")
         cell.Value = "100" & cell.Value
         Next cell

但不幸的是,什么都没发生。我怎么能解决这个问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-20 10:02:25

代码语言:javascript
复制
For Each cell In XcelFile.Range("A:A")

应该是

代码语言:javascript
复制
Dim sh As Excel.Worksheet
Set sh = wb.ActiveSheet
For Each cell In sh.Range("A:A")

我觉得。

这适用于您现在拥有XcelFile.Cells的所有其他地方,请将它们更改为sh.Cells

注意:

代码语言:javascript
复制
Dim XcelFile As Excel.Application

真是个让人困惑的名字,IMHO。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36739786

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档