Я работаю над небольшим проектом, который требует, чтобы я копировал и вставлял определенные столбцы, если обнаружил «истину» в строке. Я пытаюсь вставить эти выбранные столбцы на другой лист, и я хочу вставить только их значения, а не формулы.Вставить специальные значения в vba
Это то, что у меня есть до сих пор, и я получаю сообщение об ошибке со специальной функцией вставки. Пожалуйста помоги.
' CopyIfTrue()
Dim Col As Range, Cell As Excel.Range, RowCount As Integer
Dim nysheet As Worksheet
Set nysheet = Sheets.Add()
nysheet.Name = "T1"
Sheets("FemImplant").Select
RowCount = ActiveSheet.UsedRange.Rows.Count
Set Col = Range("I2:I" & RowCount) 'Substitute with the range which includes your True/False values
Dim i As Integer
i = 1
For Each Cell In Col
If Cell.Value = "True" Then
Cell.Copy
Sheets("T1").Select 'Substitute with your sheet
Range("b" & i).Select
ActiveSheet.Paste
'Get sibling cell
Sheets("FemImplant").Select
Dim thisRow As Integer
thisRow = Cell.Row
Dim siblingCell As Range
Set siblingCell = Cells(thisRow, 2)
siblingCell.Copy
Sheets("T1").Select 'Substitute with your sheet
Range("a" & i).Select
ActiveSheet.PasteSpecial Paste:=xlPasteValues
Sheets("FemImplant").Select
i = i + 1
End If
Next
Что означает «получение ошибки»? Когда вы вводите слова «ошибка», ** следующая вещь **, вы должны начать вводить ошибку, которую вы получаете, в комплекте с ** точным ** сообщением об ошибке с любыми адресами памяти. Мы не можем видеть ваш экран с того места, где мы сидим, и предоставление информации об ошибках облегчает вам помощь в получении ответа. «получение ошибки» без подробностей абсолютно бесполезно для людей, которые не сидят за вашим столом. :-) Пожалуйста, отредактируйте свой вопрос и предоставьте данные, чтобы мы могли помочь вам решить вашу проблему. Благодарю. –
@ user1452091: Я бы рекомендовал использовать автофильтр вместо прокрутки каждой строки. Это будет намного быстрее ») –