excel - 将一维数组值应用于二维数组的 .NumberFormat 的代码
问题描述
我在一列(n 行长)中有一组格式,我想将其应用于表(13 cols xn 行)。列中存储的格式是动态的,并且基于数据类型,例如货币、百分比等。例如: #,##0;[Red](#,##0);"-"
或0.0%;[Red]0.0%;"-"
我希望在更新列时对表格的每一行进行格式化。注意:我对条件格式不感兴趣。
我最初尝试直接引用rng2
as in,row.NumberFormat = rng2
但这似乎陷入了一个永无止境的循环。
Sub formatrows()
Dim rng1 As Range
Dim rng2 As Range
Dim row As Range
Dim i As Integer
Set rng1 = Range("Ac7:ao400")
Set rng2 = Range("d7:d400")
i = 0
Range("AC7").Select
'rng1.ClearFormats
For Each row In rng1.Rows
row.NumberFormat = ActiveCell.Offset(i, -25)
i = i + 1
Next row
End Sub
这就是我想出的似乎可行但相当笨重的方法,我确信有更好的方法来做到这一点?
解决方案
简化一点:
Sub formatrows()
Dim rng1 As Range
Dim row As Range
Set rng1 = Range("Ac7:ao400")
'rng1.ClearFormats
For Each row In rng1.Rows
row.NumberFormat = row.EntireRow.Cells(4).value 'take format from ColD
Next row
End Sub
推荐阅读
- java - 在 Jersey 2.26 中替换 AbstractContainerRequestValueFactory
- python-3.x - 如何使用 Pandas 从 CSV 文件的日期列中提取特定日期集?
- javascript - How to control Tamper Monkey dashboard Installed script, so that user cannot disable a script
- excel - 将excel sheet的数据与neo4j中的相关数据进行对比
- python - How would I loop the triangles/improve my code? (Nested triangle turtle)
- node.js - Loopback: Creating relations between models in different microservices
- python - Finding shortest sublist with sum greater than 50
- spring-webflux - Spring Cloud Contract EXPLICIT 和 WEBTESTCLIENT 测试模式
- appium - 跳过某些关键字的“捕获页面截图”
- python - 如何在条件下从数据框中选择多列和多行?