ABAP 实现 vba 设置range的属性问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ABAP 实现 vba 设置range的属性问题相关的知识,希望对你有一定的参考价值。
需求:将Excel的一个range中的format设为text
VBA:
Range("L1:L30").Select
Selection.NumberFormat = "@"
ABAP:
CALL METHOD OF W_SHEET 'Cells' = W_CELL_F NO FLUSH
EXPORTING #1 = UP_ROW_F
#2 = UP_COL_F.
CALL METHOD OF W_SHEET 'Cells' = W_CELL_T NO FLUSH
EXPORTING #1 = UP_ROW_T
#2 = UP_COL_T.
CALL METHOD OF W_SHEET 'RANGE' = W_RANGE NO FLUSH
EXPORTING #1 = W_CELL_F
#2 = W_CELL_T.
CALL METHOD OF W_RANGE 'Select' = W_SELECTION NO FLUSH.
SET PROPERTY OF W_SELECTION 'NumberFormat'
= '@'.
但是没有效果。
我的疑问在selection的这句是我这么写的吗?
如果是的话,为什么没反应
我写成SET PROPERTY OF W_RANGE 'NumberFormat' = '@'.
也没用
Range("L1:L30").NumberFormat = "@"追问
我知道错在哪里了,谢谢。
本回答被提问者和网友采纳VBA编程11.Application对象
Application对象常用属性
【ActiveCell属性】
ActiveCell属性返回一个Range对象,表示当前窗口或指定窗口中的单元格。如果窗口没显示工作表,则此属性无效。
【代码区域】
Sub 激活单元格() Worksheets("sheet1").Activate \'激活当前单元格 With ActiveCell .Value = "娑娜" With .Font .Bold = True \'设置为粗体 .Italic = True \'设置为斜体 .Size = 20 \'设置字体大小 End With End With End Sub
【结果展示】
注意:之所以该单词显示于B2,是因为在执行之前我已经将鼠标悬停此处。
【ActiveWorkbook属性】
ActiveWorkbook是一个只读属性,用于返回一个Workbook对象,该对象表示活动窗口中的工作簿
没有打开的窗口或信息窗口或剪贴板窗口作为活动窗口,则返回Nothing
【代码区域】
Sub 测试ActiveWorkbook属性() Dim obj As Object Set obj = ActiveWorkbook Debug.Print CStr(obj.Application.Value) End Sub
【结果展示】
【Caption属性】
Caption是一个可读写属性,用于设置或返回Microsoft的主窗口标题栏上显示的名称,其返回的是String类型。如果没有为Microsoft的主窗口设置标题,或者将其值设置为Empty,则将此属性返回一个
"Microsoft Excle"作为默认标题
【代码区域】
Sub 更改标题() Application.Caption = "OLIVER--Excle 2013" End Sub
【结果展示】
【Range属性】
Range属性返回一个Range对象,表示一个单元格或单元格区域
Range实例地址:http://www.cnblogs.com/OliverQin/p/6198441.html
【Selection属性】
Selection属性表示为Application对象返回在活动窗口中选定对象
【代码区域】
Sub 测试Selection属性() Worksheets("sheet1").Activate Range("A1").Select Selection.Clear \'清除sheet1工作表中内容 End Sub
【结果展示】
执行前
执行后
【sheets方法】
sheets属性是一个只读属性,用于返回一个sheets集合,其类型是一个Sheets对象
Sub 测试sheets属性() Dim wss As Sheets Dim i As Integer Application.Workbooks(1).Activate Set wss = Application.Sheets Debug.Print "当前工作簿名称如下:" Debug.Print For i = 1 To Sheets.Count Debug.Print Sheets(i).name Next End Sub
【结果展示】
以上是关于ABAP 实现 vba 设置range的属性问题的主要内容,如果未能解决你的问题,请参考以下文章