精华内容
下载资源
问答
  • 平时工作经常会用到excel的功能, 难免有一些操作不能批量处理, 比如说某一列有100w的数据需要合并单元格, 手动去点的话, 费时费力, 又不能保证准确性. 此时一般有三种办法, 1.请出公式大神 2.vba 3.vbs 论效率和...

    前言

    平时工作中经常会用到excel的功能, 难免有一些操作不能批量处理, 比如说某一列有100w的数据需要合并单元格, 手动去点的话, 费时费力, 又不能保证准确性. 此时一般有三种办法, 1.请出公式大神 2.vba 3.vbs 论效率和学习成本来说, vba是最佳方案.

    效果展示

    在这里插入图片描述

    完整宏代码

    Sub MergeRange()
    Dim rngData As Range
    Dim i&, lngCol&, lngFirst, lngLast
    On Error Resume Next
    Set rngData = Application.InputBox(“请选择单列数据列!”, Default:=Selection.Address, Type:=8)
    Set rngData = Intersect(rngData.Parent.UsedRange, rngData)
    lngCol = rngData.Column 'rngData所在列
    lngFirst = rngData.Row
    lngLast = lngFirst + rngData.Rows.Count - 1
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    rngData.Parent.Select
    For i = lngLast To lngFirst + 1 Step -1
    If Cells(i, lngCol) = Cells(i - 1, lngCol) Then
    Cells(i - 1, lngCol).Resize(2, 1).Merge
    End If
    Next
    rngData.VerticalAlignment = xlCenter
    Application.ScreenUpdating = True
    Application.DisplayAlerts = True
    MsgBox “合并完成。”
    End Sub

    后记

    如果对vba及宏的使用不太熟悉可以下载链接文件参考练习, 如何开启宏的功能请百度一下, 在此不赘述了.
    下载链接

    展开全文
  • How to get the value of a merged cell of an excel having range address like "$B$4:$B$11" in vba解决方案Even if it is really discouraged to use merge cells in Excel (use Center Across Selection for ...

    How to get the value of a merged cell of an excel having range address like "$B$4:$B$11" in vba

    解决方案

    Even if it is really discouraged to use merge cells in Excel (use Center Across Selection for instance if needed), the cell that "contains" the value is the one on the top left (at least, that's a way to express it).

    Hence, you can get the value of merged cells in range B4:B11 in several ways:

    Range("B4").Value

    Range("B4:B11").Cells(1).Value

    Range("B4:B11").Cells(1,1).Value

    You can also note that all the other cells have no value in them. While debugging, you can see that the value is empty.

    Also note that Range("B4:B11").Value won't work (raises an execution error number 13 if you try to Debug.Print it) because it returns an array.

    展开全文
  • VB VBA 查excel合并单元格 查出合并单元格并列出合并的范围!很实用!
  • 在Excel中,使用合并单元格功能时,最后的结果将只是所合并区域左上角单元格中的数据,如图1所示。 然而,很多时候我们都需要在合并的同时也能保留单元格的的数据。下面的程序在合并单元格后将保留合并单元格区域中...

    在Excel中,使用合并单元格功能时,最后的结果将只是所合并区域左上角单元格中的数据,如图1所示。
    在这里插入图片描述
    然而,很多时候我们都需要在合并的同时也能保留单元格的的数据。下面的程序在合并单元格后将保留合并单元格区域中所有单元格中的数据。

    Sub MergeCellsAndValues()
    	Dim rng As Range    
    	Dim strResult As String       
    	On Error Resume Next       
    	For Each rng In Selection       '可以将" "更换为你自已的分隔符号       
    		strResult = strResult & rng.Value & " "   
    	Next rng       
    	strResult= Left(strResult, Len(strResult) - 2)       
    	
    	With Selection        
    		.Clear       
    		.Cells(1).Value = strResult        
    		.Merge       
    		.HorizontalAlignment = xlLeft       
    		.VerticalAlignment = xlCenter       
    		.WrapText = True    
    	End With
    End Sub
    

    代码首先遍历所要合并的单元格并将这些单元格中的值连接成一个字符串存储在指定的变量中,示例中使用空格(” ”)来分隔各单元格的数据,你可以修改为其他分隔符,例如逗号。代码运行后的效果如图所示。
    在这里插入图片描述

    展开全文
  • VBA 合并单元格字符

    2014-05-04 09:54:03
    VBA 合并单元格字符 将多个单元格的内容汇总至一个单元格内
  • Range.Merge 方法:由指定的Range对象创建合并单元格 (一)对选择的区域进行合并 Sub 合并单元格() Selection.Merge '对选中的单元格区域执行此段代码,进行合并,仅保留左上角值 End Sub ******************...

    Range.Merge 方法:由指定的Range对象创建合并单元格

    (一)对选择的区域进行合并

    Sub 合并单元格()

           Selection.Merge              '对选中的单元格区域执行此段代码,进行合并,仅保留左上角值

    End Sub

    **********************

    (二)对相同相邻单元格进行合并

    原料如下:

    部门 职工 职级
    1部门
    展开全文
  • Sub 加人() Dim i, j, k, bednum, sunum As Integer Dim xg As Range Dim stuname, gread As String stuname = InputBox("输入学生姓名") gread = InputBox("输入学生班级") sunum = InputBox("输入学生宿舍号") ...
  • Excel VBA中单元格合并与拆分

    万次阅读 2018-12-30 15:26:10
    对于合并单元格这里提供”从上到下“和“从下到上”合并单元格两种方式,”从上到下“的方法需要记录当前列有多少个相同的单元格和判断相应的单元格是否是合并单元格,过程相对来说繁琐一些,“从下到上”的方法则...
  • VBA合并单元格同项目的姓名和金额合并显示.xlsm
  • Sub test() Dim i As Long Dim j As Long Dim temp As Long Dim iRow As Long Dim jRow As Long i = 2 Do While i < 16 j = i + Cells(i, 1).MergeArea.Rows.Count ...iRow = Cells(i, 1).Merg...
  • VBA处理工作表合并单元格 - 格式篇

    千次阅读 2018-03-01 01:49:30
    Excel合并单元格是有人爱有人恨的功能,一般来说数据分析师都非常憎恨这个功能,因为合并单元格常常闹幺蛾子,导致数据统计和格式化障碍重重。 格式篇 对于普通的规整数据,如果需要设置成间隔填充颜色,可以...
  • VBA中获取合并单元格的真实地址

    千次阅读 2016-12-20 16:21:00
    二少工作需要在VBA中获取 合并单元格 的地址范围, 于是有了此方法,作此记录 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Range("A1").MergeCells Then realadd = ...
  • Sub 重组跨页合并() '将跨页的合并单元格重新合并从而适应分页打印 Dim p, MerageAddress As String, PageCell As Range, MergeValue Application.ScreenUpdating = False ActiveWindow.View = ...
  • Sub 合并单元格() Dim i As Integer, j%, rng As Range,strng as range Application.DisplayAlerts = False i = Cells(Rows.Count, 1).End(xlUp).Row set strng =Application.InputBox("请选择要...
  • excel vba两个单元格内容合并

    千次阅读 2020-10-11 13:35:26
    (2)用vba合并两个单元格的内容; 前提:启用Excel开发工具 提示:以下是本篇文章正文内容,下面案例可供参考 一、用vba编辑单元格内容 举例: 代码如下: Sub bianji() Content = Cells(9, 3) Cells(9, 3) = ...
  • Excel使用VBA实现合并、拆分单元格,另存为功能,VBA代码有详细说明,给初学者提供学习VBA的基础知识。
  • vba合并单元格.xlsm

    2020-05-03 11:53:57
    平时工作经常会用到excel的功能, 难免有一些操作不能批量处理, 比如说某一列有100w的数据需要合并单元格, 手动去点的话, 费时费力, 又不能保证准确性. 此时一般有三种办法, 1.请出公式大神 2.vba 3.vbs 论效率和...
  • VBA合并单元格黏贴赋值

    千次阅读 2013-11-06 12:33:49
    由于EXCEL通过剪切板给合并后的单元格赋值时候会出现如下错误 所以在vba中也一定不能了,其实可以通过一种...三、合并单元格 下面是具体的使用 Sub tttt()  Dim i, g  Dim objData As DataObject  
  • '工作用于打印报表时需用到相同单元格合并 Private Sub Workbook_BeforePrint(Cancel As Boolean) '打印之后执行函数 Dim l%, i% '声明变量 k% = 1 '第一列 l = [A65536].End(xlUp).Row For i = l To 11 Step -1 '...
  • 继续学习!'单元格合并 Sub h1() Range("g1:h3").Merge ' End Sub ... '合并区域的返回信息 ...).MergeArea.Address '返回单元格所在的合并单元格区域 End Sub '判断是否含合并单元格 ...
  • excel 判断合并单元格

    2011-09-18 15:47:58
    excel基本操作,创建,读写,公式设置,判断是否为合并单元格
  • 写在前面:  最近老大丢给我一个数据量比较大,比较复杂的表,让我用VB去处理,刚被分到这个...一、Excel VBA拆分合并单元格并自动填充 Private Sub Worksheet_SelectionChange(ByVal Target As Range)  Dim n As
  • 应用场景跨页合并单元格后重新合并并适应分页打印知识要点1:ActiveWindow.View = xlPageBreakPreview 分页预览模式,判断分页符位置2:HPageBreaks 对象 打印区域内水平分页符的集合3:HPageBreak.Location 属性 ...
  • 1、合并单元格,解除合并,同时填充内容2、实现单元格合并
  • EXCEL使用合并单元格不是一个规范的做法,接手其他人的表格如果有合并单元格,如需要逐一处理,特别是让菜鸟级的始作俑者逐一改正。如能把当前SHEET页内的所有合并单元格都用特殊颜色做为底色标识出来就太棒了。
  • 合并单元格之前要提前将数据列排序好,然后再复制以下代码,运行宏程序。 批量合并单元格 Sub RngMergeCondition() '批量合并单元格 Dim rngUser As Range Dim rngMerge As Range Dim rngSelect As Range Dim i ...
  • Sub adjustpic() '根据合并单元格大小调整图片大小 Dim Pic As Shape For Each Pic In ActiveSheet.Shapes  If Pic.TopLeftCell.MergeCells = True Then  Set cc = Pic.TopLeftCell.MergeArea  Pic.LockAspec
  • 在WORD插入表格我们已经在多篇文章进行描述了,现在我们需要做的是对插入的表格进行单元格行列的合并。 在网上找了很久,发现都是行的合并,关于列的合并没有找到,于是我就只能自己写了,代码如下: Sub ...
  • 通过VBA代码合并单元格

    千次阅读 2016-12-22 16:05:50
    有时候,excel表格里同一列里面有许多相同的值(比如同一个部门、同一个老师),这时候我们就需要把相同值合并成一个单元格,以使excel表格看起来更美观,更符合人们的审美。那么怎么办呢?今天我将与大家分享一个...
  • 已尝试多种方法,但excel不支持合并单元格的同时保持数据颜色不变,现只能通过word实现,但由于数据量共有1000+条,word多页面处理不太方便,也尝试了其他报表类软件,求问是否可以通过python或VBA实现,大概的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,589
精华内容 1,035
关键字:

vba中合并单元格

友情链接: eddyuv.zip