复制单元格范围,粘贴到Word和格式 - Excel VBA

时间:2016-04-15 18:29:38

标签: excel vba

我想从Excel中复制一系列单元格,将其粘贴到Word中,然后使用AutoFit将其格式化为列。我怎样才能做到这一点?这可以使用ListObject完成 我不想在Excel中将其格式化为表格。

2 个答案:

答案 0 :(得分:2)

您无法为Range对象分配ListObject引用 - 它们不是同一回事!

使用$A$1:$C$2中的这些值制作新工作表:

A    B    C
1    2    3

点击"宏录制器",然后选择"格式为表"从功能区;停止宏录制器。生成此代码:

Sub Macro1()
    ActiveSheet.ListObjects.Add(xlSrcRange, Range("$A$1:$C$2"), , xlYes).Name = _
        "Table1"
    Range("Table1[#All]").Select
    ActiveSheet.ListObjects("Table1").TableStyle = "TableStyleLight1"
End Sub

您需要Add ListObject ListObjects访问工作表的private void getCurrentLocation() { Location location = LocationServices.FusedLocationApi.getLastLocation(googleApiClient); if (location != null) { //Getting longitude and latitude longitude = location.getLongitude(); latitude = location.getLatitude(); //moving the map to location moveMap(); } } 集合,并指定您的来源范围。

答案 1 :(得分:2)

(我会将此作为对@ mats-mug的评论发布但我还不能)作为@ mats-mug答案的补充和一般的良好做法,请考虑不使用ActiveSheet在你的代码中。将工作表声明为工作表对象。

Dim wbSLA as Workbook
Dim wsDetailSLA as Worksheet
    Set wbSLA = ThisWorkbook
    Set wsDetailSLA = wbSLA.Sheets("SLA Details")

'use @mats-mug code here using the worksheet objects instead of ActiveSheet