【问题标题】:Definition of cells in a selected area在选定区域中定义单元格
【发布时间】:2015-03-27 19:49:22
【问题描述】:

我有以下 VBA 代码可以转换为 OpenOffice Calc:

Sub RangeButton()
Dim rngArea As Range
    For Each rngArea In Selection.Areas
    Cells(3, 2).Value = rngArea(1).Address(0, 0) & ":" & rngArea(rngArea.Cells.Count).Address(0, 0)
    Next rngArea
End Sub

我正在创建一个范围按钮以在单元格 (3,2) 中定义选定区域的第一个和最后一个单元格。我想知道如何定义选择的第一个和最后一个单元格。

在 VBA 中定义如下:

rngArea(1).Address(0, 0)
rngArea(rngArea.Cells.Count).Address(0, 0)

【问题讨论】:

  • 我不能说我理解你的问题,但我认为这会对你有所帮助:MsgBox (Replace(Range(Cells(Selection.Row, Selection.Column), Cells(Selection.Row + Selection.Rows.Count - 1, Selection.Column + Selection.Columns.Count - 1)).Address, "$", ""))
  • 对不起。我真正想要的是 Open Office BASIC 的代码,它允许用户按下按钮并将他刚刚用鼠标所做的选择保存在单元格中。例如:用户用鼠标选择 A2:C5 并按下按钮,然后在 Cell("B3") 中将出现字符串 "A2:C5"。我需要这样做,因为我将使用这个范围作为另一个函数的输入。

标签: excel cells openoffice-calc vba


【解决方案1】:
Range(rngArea(1).Address(0, 0),rngArea(rngArea.Cells.Count).Address(0, 0))

? (如果 在 VBA 中的定义类似 表示您定义了第一个和最后一个单元格)。
我个人会将它们定义为

Selection = Range( _  
Cells(rngArea(1).Row,rngArea(1).Column), _ 
Cells(rngArea(1).Row + rngArea(1).Rows.Count - 1, rngArea(1).Column + rngArea(1).Columns.Count - 1) _  
)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-27
    • 2012-07-10
    • 1970-01-01
    • 2018-06-16
    • 2013-05-09
    相关资源
    最近更新 更多