一个表格里,中间列F,想弄成 i 那种格式,内容不变,保持和e和g格对称一样,很多几千个这样的格,没有规律。怎么批量弄,单个弄,我会,合并内容,但关键是太多了。用格式刷不行, 因为没有规律,一刷,格大小改变了。下面还有太多太多。有高手知道的么,望解答。
因为我这里没有WPS,只有Excel,我说说Excel的做法吧。
表面上看着像合并,修改外边框就行了,但是看图你这个确实是合并过的,于是只能用range("i" & 起始行号 & ":i" & 终止行号).merge这样的代码了,这是合并,然后再填入数字,需要用chr(10)来强制换行,说了这么多直接上代码吧
Sub a()
Dim i As Long '循环的行
Dim j As Long '合并的循环
Dim Qsh As Long '起始行
Dim Zzh As Long '终止行
Dim str1 As String
For i = 1 To Cells(Rows.Count, "A").End(xlUp).Row
If Range("a" & i) = 1 Then
Qsh = i
End If
If Range("a" & i) <> "" And Range("a" & i) <> 1 And Range("a" & i + 1) = 1 Or Range("a" & i + 1) = "" Then
Zzh = i
Range("b" & Qsh & ":b" & Zzh).Merge
For j = Qsh To Zzh
If j = Zzh Then
str1 = str1 & Range("a" & j)
Else
str1 = str1 & Range("a" & j) & Chr(10)
End If
Next j
Range("b" & Qsh) = str1
str1 = ""
End If
Next i
End Sub
效果如下图:
我这里数据来源是A列,你可以把代码里面的“A”替换成你需要的列
追问第一步,我启用宏,使文件薄可以用宏,然后我按,alt+f11,出来了宏,我复制你那个,然后怎么做。没反应呀,保存么?求解。谢谢
按F8可以逐步运行,按那个三角形就能直接运行到底了,只要跑起来就行了,遗憾的是我无法看到你追问的图片内容。
追问看在你这么辛苦回答问题的份上,答案奖赏给你吧。其实,我是通过另一个人,获得方法的,可惜,他在我弄明白之后,把答案删了,本想给他。没法给他了。给你吧。谢谢了。
追答没事,你的追问让我感到低人一等,“奖赏”这个词带一丝贬义,况且财富值也没什么用处,我仅仅只是为了帮一下后来者
鼠标左键按住不放,选中123,然后松开鼠标,按ctrl和M键完成合并。
假定:
原表格的第一行在Excel表格的第7行;
E列数据所对应的个数不超过10个;
如果大于10,可以在公式中的“&CHAR(10)&F16”后面增加“&CHAR(10)&F17......”
原表格的最后一行在Excel表格的第10000行;
如果小于10000,如,21,将公式中的两个“F$10000”修改成“F$21"
原表格的后面有若干空行。
空行数不小于E列数据所对应的个数的最大值
在I7单元格中输入公式:=IF(E7=0,"",LEFT(F7&CHAR(10)&F8&CHAR(10)&F9&CHAR(10)&F10&CHAR(10)&F11&CHAR(10)&F12&CHAR(10)&F13&CHAR(10)&F14&CHAR(10)&F15&CHAR(10)&F16,IFERROR(MATCH(1,F8:F$10000,0),COUNTA(F7:F$10000))*2-1))
选中I7单元格,下拉复制到表格的最后一行;
复制E列,选择性粘贴格式到F列;
设置F列格式为“自动换行”
你这个有点复杂,我不采纳,抱歉。
wps有代码。不会编代码,
追答那就出钱让人帮着