【发布时间】:2011-07-04 06:17:11
【问题描述】:
我不想使用宏来计算宽度。我只想选择 excel 中的列(只需单击每个字母 A、B、C 等),然后有一个神奇的答案,即我选择的每列的宽度之和是一些 px。 Excel 只允许我知道每列的宽度,如果我更改任何列的宽度,它只会使所有选定的列变得那么宽。
感谢任何提示。
【问题讨论】:
标签: excel
我不想使用宏来计算宽度。我只想选择 excel 中的列(只需单击每个字母 A、B、C 等),然后有一个神奇的答案,即我选择的每列的宽度之和是一些 px。 Excel 只允许我知道每列的宽度,如果我更改任何列的宽度,它只会使所有选定的列变得那么宽。
感谢任何提示。
【问题讨论】:
标签: excel
这不会给你一个神奇的答案,但它可能会在没有任何 VBA 的情况下快速获得答案。
1) 在文档顶部插入一个空白行
2) 在 A1 单元格中,输入以下公式:
=CELL("width", A1)
3) 通过拖动 A1 的细黑十字准线(将鼠标悬停在单元格的右下角出现)将公式应用于所有其他列。
您将获得每列宽度的四舍五入像素值。 然后,只需为要添加的所有列选择第一行中的单元格,然后查看 Excel 窗口的底部。在进行选择时,您应该会看到值的总和。 例如,如果要将 A、B 和 D 列的宽度相加, 选择 A1 CTRL+单击 B1 和 CTRL+单击 D1。在右下角,您会看到它们的总宽度。
我希望这会有所帮助。
【讨论】:
您可以通过为单元格指定名称来按点获取列宽。参考下面,以单元格 A1 为例:
注意:确保在第 2 步中不要锁定单元格名称。
希望这会有所帮助。
【讨论】:
Sub ColumnAuto4()
' Paul Pfau -- 8.02
Dim Column_ As Integer
Dim ColumnMin_ As Integer
Dim Loop_ As Integer
Cells.EntireColumn.AutoFit
Column_ = 1
For Loop_ = 1 To 20
Cells(1, Column_).Select
ActiveCell = "=CELL(""width"")"
ColumnMin_ = ActiveCell.Value
If ColumnMin_ < 4 Then
ActiveCell.ColumnWidth = 4
End If
Column_ = Column_ + 1
Next Loop_
End Sub
【讨论】: