2014-02-11 5 views
-4

У меня есть таблица Excel и нужен макрос. В листе 1 у меня есть несколько значений 7 чисел в ячейке, например, 1 | 2 | 3 | 4 | 5 | 6 | 7 | до 93 | 94 | 95 | 96 | 97 | 98 | 99 |, которые можно найти на столбцах A, B, C, D, E, F, G, H, I, и я хочу, чтобы этот пример извлек все значения, начинающиеся с числа 1, и поместите все значения на рабочий лист 2 столбца A, B, C, D, E, F, G, H, I ,.
Я попытался извлечь фильтр со вкладки данных, используя: sort и filter ,,, filter ,,,, filter by number ,,,, и начиная с ,,,,. Сделав это, я применяю фильтр, но когда я выбираю значения данных и принимаю выбранные, которые не работают.Как перенести данные с одного листа на другой

Спасибо.

Вы меня понимаете неправильно, не так, объясните более подробно, мне это нравится столбец A 1 | 2 | 3 | 4 | 5 | 6 | 7 | , 21 | 25 | 32 | 43 | 51 | 60 | 73 |, 1 | 2 | 3 | 4 | 52 | 69 | 78 | , 11 | 12 | 30 | 45 | 50 | 61 | 79 | , 3 | 5 | 70 | 74 | 75 | 77 | 79 | , 1 | 22 | 33 | 44 | 50 | 63 | 75 |, 1 | 22 | 33 | 44 | 50 | 63 | 75 | ................ столбец B 1 | 2 | 3 | 4 | 5 | 6 | 23 | , 1 | 2 | 3 | 4 | 5 | 6 | 8 | , 1 | 2 | 3 | 4 | 5 | 6 | 9 | , 1 | 2 | 3 | 4 | 5 | 6 | 10 | , 11 | 21 | 31 | 40 | 52 | 61 | 70 | , 9 | 2 | 3 | 4 | 50 | 68 | 70 | , 1 | 12 | 13 | 24 | 51 | 60 | 77 | , ......... столбец C 1 | 2 | 3 | 4 | 50 | 65 | 70 | , 2 | 5 | 7 | 9 | 10 | 16 | 37 | , 5 | 8 | 9 | 14 | 15 | 26 | 67 | ,,,,,,,,,,, 1 | 94 | 95 | 96 | 97 | 98 | 99 |. В этих столбцах я хочу извлечь все значения, начинающиеся с nr1 ..... 1 | 2 | 3 | 4 | 5 | 6 | 7 | ,,, 1 | 90 | 91 | 92 | 93 | 94 | 95 | из листа1 в лист2,
Я имею в виду эти ... столбец A 1 | 2 | 3 | 4 | 5 | 6 | 7 | , 1 | 2 | 3 | 4 | 52 | 69 | 78 | , 1 | 22 | 33 | 44 | 50 | 63 | 75 | , 1 | 20 | 31 | 43 | 55 | 60 | 71 |
столбец B 1 | 2 | 3 | 4 | 5 | 6 | 23 | , 1 | 2 | 3 | 4 | 5 | 6 | 8 | , 1 | 2 | 3 | 4 | 5 | 6 | 9 | , 1 | 2 | 3 | 4 | 5 | 6 | 10 | , 1 | 12 | 13 | 24 | 51 | 60 | 77 | столбец C 1 | 2 | 3 | 4 | 50 | 65 | 70 | , 1 | 94 | 95 | 96 | 97 | 98 | 99 |

+1

Если вы разделите один столбец на 7 столбцов, используя «Text to Columns», вы сможете более легко сортировать и фильтровать. –

+0

Итак, первая ячейка 'A1' содержит цифры' 1 | 2 | 3 | .. | 11 | 12 | .. | 19 | .. | 98 | 99', и вы хотите переместить (или скопировать?) числа, начинающиеся с 1 (так «1,11,12, ..., 18,19') до столбцов на листе 2 (например,« A1 »= 1,' B1' = 11, 'C1' = 12). Это верно? – surfmuggle

+0

@helpYou Пожалуйста, исправьте все сообщение, которое нужно отредактировать. Не просто удалите одно слово, не исправляя все другие вещи, которые можно улучшить. Благодарю. – CRABOLO

ответ

0

Если первый номер в Колум А должен быть один, то вы хотите скопировать colums А через I к листу два затем использовать:

Sub NumberOne() 

Dim myvaraible As Integer 
Dim CopyRow As Long, PasteRow As Long, LastRow As Long 
CopyRow = 1 
PasteRow = 1 
LastRow = Range("A" & Rows.Count).End(xlUp).Row 
Do Until CopyRow > LastRow 
myVariable = Left(Range("A" & CopyRow).Value, 2) 
If myVariable = "1" Then 
Range("A" & CopyRow & ":I" & CopyRow).Copy Destination:=Sheets("Sheet2").Range("A" & PasteRow & ":I" & PasteRow) 
PasteRow = PasteRow + 1 
End If 
CopyRow = CopyRow + 1 
Loop 
' 
End Sub 

Это поставит их в новые строки ниже друг друга. Любые запросы дайте мне знать

+1

Также скопирует ячейки, начиная с 10,11,12 и т. Д. Я думаю, что OP хочет, чтобы первое число не было первой цифрой. –

+0

Там вы, исправленная благодарность за то, что указали его Тим –

Смежные вопросы