2017-04-15 40 views
0

假設有一個報告的輸出是這樣的。使用特定字體(粗體示例)查找單元格並在其下面的單元格中複製該單元格的值

Falkon

123 
1234 
233 
22 

12 
23 

Dafren

12 
335 
33 

現在反正是有在VBA在哪裏可以找到粗體單元格的值,將它們複製並粘貼到後面的數字圖形中直到下一個粗體單元格。

就像我想複製Falkon並將其粘貼在旁邊的4個單元格中,然後我想複製Frosty並粘貼到旁邊的兩個單元格中,等等。 Image of the excel is attached for reference

+0

是在實際工作簿中的數據完全一樣,你的樣本圖像中顯示?即後跟一些數字值的粗體文本等等? – sktneer

回答

0

嘗試......

Sub FillCells() 
Dim lr As Long 
lr = Cells(Rows.Count, "A").End(xlUp).Row 
On Error Resume Next 
Range("A2:A" & lr).SpecialCells(xlCellTypeConstants, 1).FormulaR1C1 = "=R[-1]C" 
Range("A2:A" & lr).Value = Range("A2:A" & lr).Value 
End Sub 
0
Sub brb() 
    Dim MaxRows, i As Integer 
    MaxRows = Range(Range("A1"), Range("A1").End(xlDown)).Rows.Count 
    For i = 0 To MaxRows - 1 
     If Range("A1").Offset(i, 0).Font.Bold = False Then 
      Range("A1").Offset(i, 0).Value = Range("A1").Offset(i - 1, 0).Value 
      Range("A1").Offset(i, 0).Font.Bold = True 
     End If 
    Next i 
End Sub 
+0

優秀!!!你能解釋一下嗎?這部分。 (「A1」)。Offset(i,0).Font.Bold Then pasteContents = Range(「A1」)。Offset(i,0).Value Else Range(「A1」)。Offset (「A1」)。Offset(i,0).Font.Bold = True –

+0

開始時使用粘貼內容時的差異(pasteContents = Range(「A1」))。 Offset(i,0).Value) 當它在末尾使用(Range(「A1」)。Offset(i,0).Value = pasteContents) –

+0

這是天才!不能在YouTube上找到這些。 這不是編碼,這是藝術! 謝謝 –

相關問題