我有一张像这样的桌子,因为所有不必要的空白单元格而非常混乱。我已经删除了完全空白的行,但现在我就是这部分了。请原谅我对这个过程不熟悉。我搜索过,但我的大部分结果都涉及购买工具。
话虽如此,如果其中任何一个能够完成以下任务,我愿意使用Excel,Access或SQL(SSMS)。
如果您的解决方案使用Excel,Access或VBA,请提供详尽的指导。
Row Unique ID Text
__________________________________________________________________
1 555 The Quick Brown
2 Fox Jumped
3 Over The Lazy Dog
4 321 Doe Re Me
5 Fa So La
6 Ti Doe
我想要尝试获得的最终产品看起来像这样(注意#行)。话虽如此,我并不过分关注每个文本框中的换行符,如果没有别的办法,它可能都是一行:
Row Unique ID Text
__________________________________________________________________
1 555 The Quick Brown
Fox Jumped
Over The Lazy Dog
2 321 Doe Re Me
Fa So La
Ti Doe
我基本上希望将“text”行合并为唯一ID,然后当它识别出新的唯一ID时,它将合并相应的文本单元格,依此类推。
答案 0 :(得分:0)
可能有一个更简单的解决方案,但这是我能想到的,
步骤1:选择A列,并在特殊情况下选择所有空白单元格并写入公式栏= A2,该栏号应填充所有带ID的空单元格。
步骤2:在单元格C2中写下该公式= IF(A2<> A1,B2,C1& CHAR(10)& B2)并根据需要拖动。
步骤3:将该公式写入单元格D2 = IF(A2<> A3,1,“”)并根据需要拖动。
步骤4:在D列中使用1过滤值并应用换行文本。
答案 1 :(得分:0)
在Access中创建一个简单的报告。
对于持有Row的控件(TextBox),选择Properties,并将 Hide Duplicates 设置为:Yes。
答案 2 :(得分:0)
您可以使用VBA代码根据文本列
中的值合并单元格1。)添加一个新列并应用公式= A1并拖放到第#6行
2.)在VBEditor中,在循环中使用以下代码
if Range("C" & i).Value = "0" Then
Range("A" & i - 1, "A" & i).Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Application.DisplayAlerts = False
Selection.Merge
Application.DisplayAlerts = True end if
答案 3 :(得分:0)
Click for excel image here @Mitchell 用公式设置列D,= B1,= B2,= B3 ... = B6和 在vbe编辑器中使用以下代码。
Sub check()
Dim sht As Worksheet
Dim j As Integer
Set sht = ThisWorkbook.Worksheets("Sheet1")
Sheets("Sheet1").Select
j = 0
For i = 1 To 6
If Range("D" & i).Value = "0" Then
Range("A" & i - 1, "A" & i).Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Range("B" & i - 1, "B" & i).Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Application.DisplayAlerts = False
Selection.Merge
Application.DisplayAlerts = True
Else
j = j + 1
Range("A" & i).Select
ActiveCell.FormulaR1C1 = j
End If
Next i
MsgBox "Done"
End Sub