0

大家好,我在 VB 中使用 Excel 2010

好的,所以我有一个问题,我必须将一列中的粗体单元格值复制到另一列中,并且要复制相同的值,直到它再次碰到带有粗体单元格值的行,然后该值接管并复制到另一个粗体值等和复制数字的前 2 位数字(或我认为数字存储为文本的字符)将被删除。

这可以做到吗?

我找到了将粗体值复制到另一列的代码:

Sub yTekhed()
    For Each cell In [A30:A2557]
        If cell.Font.Bold = True Then
            Debug.Print cell.Row
            cell.Copy Range("I" & Range("I65536").End(xlUp).Row + 1)
        End If
    Next cell
End Sub

我想出了删除字符,有一个公式 =RIGHT(A1; LEN(A1)-2)

但据我所知

我仍然不能在常规上复制粗体。所以说我有:

08479

代码

082222

093334

084213

08572

代码

093212

012321

482123

我希望粘贴看起来像

08479

08479

08479

08479

08572

08572

08572

08572

因此,将粗体值粘贴到每个常规(非粗体)值上,直到下一个粗体值,然后复制该值,然后将该值粘贴到常规值上。希望这能更好地解释它。

任何帮助将不胜感激

4

1 回答 1

0

这应该可以解决问题:

Sub yTekhed()
    LastRow = Cells(Rows.Count, "A").End(xlUp).Row

    For i = 1 To LastRow
        If Range("A" & i).Font.Bold = True Then
            Range("A" & i).Copy Range("B" & i)
            x = i
        Else
            Range("A" & x).Copy Range("B" & i)
        End If
    Next i

End Sub
于 2012-11-05T08:35:52.063 回答