Excel 是否尝试使用粗体格式复制VBA代码?

Excel 是否尝试使用粗体格式复制VBA代码?,excel,vba,loops,formatting,Excel,Vba,Loops,Formatting,以下是我当前的实现(这是更长脚本的一小部分): 这段代码在一个范围内循环,并查找另一列中有X的值,这是用于其他内容的。但我也试图让它复制,特别是粗体格式。这个实现之所以“有效”,是因为它在运行,但令人困惑的是,它有时只使用粗体格式,通常只使用一组粗体条目中的第一个粗体条目 我不能让它把每一个都复制下来,因为虽然这样做有效,但运行速度也很慢,而且通常都很难看。如果我包含一个DoEvents=false,可能不会太糟糕,但仍然如此。因为您正在其他地方复制和粘贴值,通常最好在每次复制后清除剪贴板。这也

以下是我当前的实现(这是更长脚本的一小部分):

这段代码在一个范围内循环,并查找另一列中有X的值,这是用于其他内容的。但我也试图让它复制,特别是粗体格式。这个实现之所以“有效”,是因为它在运行,但令人困惑的是,它有时只使用粗体格式,通常只使用一组粗体条目中的第一个粗体条目


我不能让它把每一个都复制下来,因为虽然这样做有效,但运行速度也很慢,而且通常都很难看。如果我包含一个DoEvents=false,可能不会太糟糕,但仍然如此。

因为您正在其他地方复制和粘贴值,通常最好在每次复制后清除剪贴板。这也可能影响性能(以积极的方式)

将以下代码添加到您的
PasteSpecial
行之后:

Application.CutCopyMode=False


工作表是否包含任何可能会被破坏的条件格式规则?

因为您要在其他位置复制和粘贴值,通常最好在每次复制后清除剪贴板。这也可能影响性能(以积极的方式)

将以下代码添加到您的
PasteSpecial
行之后:

Application.CutCopyMode=False


工作表是否包含任何可能会破坏的条件格式规则?

什么是
i
?如何/在何处声明和定义它?它在代码中的其他地方定义并用于获取列,i按其应具有的功能什么是
i
?如何/在何处声明和定义它?它在代码中的其他地方定义,并用于获取列,i按其应该的方式运行
Dim j As Integer, q As Integer
q = 2
For j = 1 To 300
    If Sheet2.Cells(j, i).Value = "X" Then
    Sheet1.Cells(q, 4).Value = Sheet2.Cells(j, 3).Value
        If Cells(j, 3).Font.Bold = True Then
            Sheet2.Cells(j, 3).Copy
            Sheet1.Cells(q, 4).PasteSpecial (xlPasteFormats)
        End If
     q = q + 1
    End If
Next j