EXCEL 表格 不同单元格合并 需要排序 但是带有图片 具体看截图
发布网友
发布时间:2022-04-27 11:45
我来回答
共5个回答
热心网友
时间:2023-09-16 02:26
解决:
A.使用CTRL+G——对象——找到所有的图片——右击——设计对象格式——属性——大小固定,位置随单元格而变化。
B.再一次排序,找到图片排序中空白没有图片的那个图片,登记下来。
C.找到刚才那个空白没有图片——右击——设计对象格式——属性,此时不管是什么属性,点下别的属性,然后再点大小固定,位置随单元格而变化。
D.依次把所有的空白图片都重新点别的属性,再点大小固定,位置随单元格而变化。
图片没有全部在表格中,而是在表格边界压线或者是图片超出表格了。
判断:使用打印预览功能看那个表格的线打不出来,那就是图片超出表格了。
解决:把图片那一行的表格行距和列宽全部加大(使用全选,然后拖两下鼠标)或者把图 片全部缩小(使用CTRL+G,然后选择对象,就可以找到所有的图片,然后再缩小 就可以)一点就可以啦。这样子就可以一下子解决表格小了图片超出表格的问题 了。
以上两个步骤可能需要多做几次才能全部的把图片排序正确,比如我这个表格,一共是85个图片,我重复了上面的步骤3次,才全部的排序成功呢!
追问其实不是很明白 你有QQ吗???我把文件传输给你。
热心网友
时间:2023-09-16 02:27
把图片和数据分两个文件,把数据排好后,再把图片排好,然后把图片的那个文件引用到到数据文件里就可以了!追问具体如何引用?
追答引用其他表,百度搜索下前面五个字,介绍的比较详细,打字说不清楚
热心网友
时间:2023-09-16 02:27
这种只能 通过写代码才能实现的,而且难度有点大,需要文档测试调整!
热心网友
时间:2023-09-16 02:28
复制下面代码
按alt +F11
到代码区域粘贴
Sub ABC()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Dim a As String
Dim b As String
Dim a1%, d%, s1%, s2%, s%, r%, g%, h%, f%, j%, k%
On Error Resume Next
a = ThisWorkbook.Name
b = ActiveSheet.Name
With Workbooks(a)
.Sheets.Add(, .Sheets(1)).Name = "副本"
a1 = Sheets(b).Range("D60000").End(3).Row
For j = 1 To 1000
For Each Rng In .Sheets(b).Range("G1:H" & a1)
Set cel = Rng.MergeArea
If Rng.Address <> cel.Address And Rng.Address = cel.Item(1).Address Then
If Rng.Value = j Then
s1 = Rng.Top
s2 = Rng.Top + Rng.Height
s = Rng.Row
r = cel.Rows.Count
d = .Sheets("副本").Range("d60000").End(3).Row + 1
If d = 2 Then d = d - 1
.Sheets(b).Range("A" & s & ":" & "H" & s + r - 1).Copy .Sheets("副本").Range("A" & d)
f = .Sheets("副本").Range("d60000").End(3).Row
g = (f - d) / 2
g = Round(g, 0)
h = .Sheets("副本").Range("A" & g).Top
For Each xxx In .Sheets(b).Shapes
If InStr(xxx.Name, "ic") > 0 And xxx.Top > s1 And xxx.Top < s2 And xxx.Left < 5000 Then
xxx.Left = 5010
xxx.Top = h
End If
Next
End If
End If
Next
Next j
.Sheets(b).Range("A1:H10000").Clear
.Sheets("副本").Range("A1:H10000").Copy .Sheets(b).Range("A1")
k = .Sheets(b).Range("G1").Left
For Each xx In .Sheets(b).Shapes
If InStr(xx.Name, "ic") > 0 And xx.Top > s1 And xx.Top < s2 And xx.Left > 5000 Then
xx.Left = k
End If
Next
.Sheets("副本").Delete
End With
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
最后按 alt + f8找到abc 然后按运行
热心网友
时间:2023-09-16 02:28
有照片的话,不好调,为了准确,需要手动调整。