excel - 将一列中的所有单元格下移一行(偏移)
问题描述
我想将一列中的所有单元格(在我的情况下是 C 列)中向下移动一行。这意味着如果我在单元格 C1 中写了“X”,它应该下移到单元格 C2,如果我在单元格 C1000 中写了“Y”,它应该下移到单元格 C1001……</p>
我有以下错误消息:
运行时错误 1004,应用程序定义或对象定义错误
Sub movedownrowcolumnC()
Range("C:C").Offset(1).Select
End Sub
解决方案
利用:
Cells(Rows.Count, "C").End(xlUp).Offset(1).Select
尽管您很可能不需要Select
任何东西,只需使用Range
变量即可:
Sub movedownrowcolumnC()
Dim myRange As Range
Set myRange = Cells(Rows.Count, "C").End(xlUp).Offset(1)
myRange.Value = "myValue"
End Sub
虽然不仅仅是“良好的编码实践”是始终明确限定一个Range
对象的Worksheet
引用:
Sub movedownrowcolumnC()
Dim myRange As Range
With Worksheets("mySheetName") ' reference wanted worksheet (change "mySheetName" to your actual relevantsheet name)
Set myRange = .Cells(.Rows.Count, "C").End(xlUp).Offset(1) ' ser referenced worksheet column C cells right below last not empty one
End With
myRange.Value = "myValue"
End Sub
推荐阅读
- python - 如何在视频opencv python上稳定边界框
- spring - 如何在 jar 运行命令上覆盖 db url
- c# - Selenium 测试在断言上失败(错误地)并且没有按预期继续
- python - 如何使用python将变量回显到文件中
- postgresql - 如何将我的本地 postgres db 带到 aws rds postgres
- c++11 - 为什么要调用移动赋值运算符?
- .net - 使用 Azure AD 和本地数据库的 .NET Core 更新权限
- python - 通常,使用 os.system 和 subprocess 模块以及与清除控制台有关的区别是什么?
- java - ArrayList TextInput 等于条件不显示用户输入的内容
- python - 为什么用python做一个hello world这么难?