本文作者:office教程网

excel利用VBA将多行多列区域转为一列

office教程网 2024-04-22 03:11:58
后台-系统设置-扩展变量-手机广告位-内容正文顶部
摘要: 有时需要在Excel中将某个多行多列的区域转换到一列中,下面的VBA代码可以实现这个目的。
1.按快捷键Alt F11,打开VBA编辑器,在右侧代码窗口中粘贴下列代码:
Sub Ran...

有时需要在Excel中将某个多行多列的区域转换到一列中,下面的VBA代码可以实现这个目的。

1.按快捷键Alt F11,打开VBA编辑器,在右侧代码窗口中粘贴下列代码:

Sub RangeToOneCol()
Dim TheRng, TempArr
Dim i As Integer, j As Integer, elemCount As Integer
On Error GoTo line1
Range("a:a").ClearContents
If Selection.Cells.Count = 1 Then
Range("a1") = Selection
Else
TheRng = Selection
elemCount = UBound(TheRng, 1) * UBound(TheRng, 2)
ReDim TempArr(1 To elemCount, 1 To 1)
For i = 1 To UBound(TheRng, 1)
For j = 1 To UBound(TheRng, 2)
TempArr((i - 1) * UBound(TheRng, 2) j, 1) = TheRng(i, j)
Next
Next
Range("a1:a" & elemCount) = TempArr
End If
line1:
End Sub

怎样让Excel窗口总在最前面?

有时我们需要让Excel窗口总是显示在最前面而不被别的窗口挡住,虽然Excel并没有提供这样的功能,但可以用下面的方法:方法一:使用软件能够实现让窗口总在最前面的软件非常多,例如前

上述代码可以将所选择的区域转换到A列中。

2.关闭VBA编辑器,返回Excel工作表界面。

3.如果A列包含数据,先在工作表的最左侧插入一列,以便放置转换后的数据。

4.选择需要转换的区域,按Alt F8,打开“宏”对话框,选择上述代码中的宏名“RangeToOneCol”运行代码。

excel如何快速保护所有工作表或撤消所有工作表保护

有时需要让Excel工作簿中的每个工作表只能查看而不被修改,可以对所有的工作表进行保护,如果工作簿中的工作表数量较多,手动逐一操作十分繁琐。在工作表保护密码相同或不设置密码的情

后台-系统设置-扩展变量-手机广告位-内容正文底部
未经允许不得转载:

作者:office教程网,原文地址:excel利用VBA将多行多列区域转为一列发布于2024-04-22 03:11:58
转载或复制请以超链接形式并注明出处 演示站

分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

留言与评论(共有 0 条评论)
   
验证码: