VBA Копировать столбец и вставлять только формулы – не значения – в следующий столбец

VBA Копировать столбец и вставлять только формулы – не значения – в следующий столбец

Столбец таблицы E имеет случайное сочетание значений и формул. Я хочу использовать VBA, чтобы скопировать этот столбец в следующий столбец и только скопировать формулы (а не значения) в столбец C. Я смог использовать следующий VBA для некоторого успеха, но он копирует каждый столбец мимо B до бесконечности (где I хотите, чтобы он прекратил копирование после первого столбца).

Sub Copy_Column_Formulas_NOvalues() ' ' Copy_Column_Formulas_NOvalues Macro ' Dim oSheet As Worksheet Dim rng As Range Dim cel As Range Set oSheet = Sheets("Sheet1") With oSheet Set rng = .Range(.Range("B1"), .Range("B" & .Rows.Count).End(xlUp)) For Each cel In rng If Left(cel.Formula, 1) = "=" Then Range(cel.Offset(, 1), cel.Offset(, 1).End(xlToRight)).FormulaR1C1 = cel.FormulaR1C1 End If Next cel End With End Sub 

Попробуйте этот простой макрос и дайте мне знать, если он работает,

 Sub Copy_Column_Formulas_NOvalues() Dim i As Long, j As Long For i = 1 To Sheets("Sheet3").Cells(Rows.Count, "B").End(xlUp).Row If Cells(i, 2).HasFormula Then Cells(i, 3) = Cells(i, 2).Formula End If Next i End Sub 

Измените имя Sheet3 в соответствии с вашими потребностями.

Interesting Posts
Давайте будем гением компьютера.