Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Функция ПРОЦЕНТРАНГ
 
Спасибо! Все заработало.  
У меня 2007 офис.
Функция ПРОЦЕНТРАНГ
 
Помогите, пожалуйста, разобраться с ПРОЦЕНТРАНГ.  
Мне нужно применить эту функция для всех значений столбца А, которые больше 1. Но при условии, что ячейка В равна "D", ячейка С равна "В".  
У меня почему-то не действует условие ЕСЛИ. ПРОЦЕНТРАНГ считает все значения столбца А.
Выборка из массива при определенном условии
 
Не срабатывает. Прикладываю краткий образец файла.
Выборка из массива при определенном условии
 
Я использую функцию СРГЕОМ(А:А)  
Не подскажете, как мне модернизировать формулу так, чтобы вычислялось среднее геометрическое только по тем ячейкам столбца А, у которых значение ячейки соседнего столбца В равняется n?
создание макроса для форматирования текста
 
Прошу прощения, случайно поставил треугольник закрытия темы.
создание макроса для форматирования текста
 
Так получилось, что мне понадобилось использовать часть кода, данного Вами в этом посте:  
 
Sub test()  
   Dim cell As Range  
   For Each cell In Range([A2], Range("A" & Rows.Count).End(xlUp))
       Err.Clear: x = Worksheets(cell.Text).Name  
       If Err.Number Then Worksheets.Add.Name = cell.Text  
       cell.Next.Resize(, Columns.Count - 1).Copy _ Worksheets(cell.Text).Range("a" & Rows.Count).End(xlUp).Offset(1)  
   Next cell  
End Sub  
 
Но почему-то отдельно этот код не работает. Не можете посказать, в чем тут дело?
Работа с циклами
 
>> можно циклом получить адрес типа ("A1,B1,D2,G55"), а потом удалить все разом.  
>Так тоже как-то делал (при очень большом объёме данных)  
>Как выяснилось, это самый быстрый способ.  
Если это самый быстрый способ при обработке большого массива информации, можете подсказать код операции? Я пока слабо понимаю, как он должен выглядеть.
Работа с циклами
 
То есть получается, что при обработке больших массивов информации лучше пользоваться Вашим первым, KL, макросом?
Работа с циклами
 
Я сам разобрался, прошу прощения!
Работа с циклами
 
Мне нужно удалить строки, определенные ячейки которых содержат значение "нет". Я сделал макрос:  
Sub test()  
   Dim oCell As Range  
   For Each oCell In Range([B1], Range("B" & Rows.Count).End(xlUp)).Cells
       If oCell.Value = "нет" Then Rows(oCell.Row).Delete  
   Next  
   For Each oCell In Range([I1], Range("I" & Rows.Count).End(xlUp)).Cells
       If oCell.Value = "нет" Then Rows(oCell.Row).Delete  
   Next  
End Sub  
То есть проверять мне нужно только два столбца, B и I.    
Но почему-то срабатывает только первый цикл по столбцу В. Второй цикл не работает. Почему?
создание макроса для форматирования текста
 
EducatedFool, Юрий М, спасибо большое!
создание макроса для форматирования текста
 
{quote}{login=Юрий М}{date=09.08.2009 03:14}{thema=Re: Re: Re: }Я так понимаю, что изначально всего один лист, а затем листы добавляются по мере необходимости.{/post}{/quote}  
Да, но что произойдет, если среди нескольких тысяч строк, которые будут дополняться новыми строками с данными, я найду 10 значений ячейки А, создам 10 листов, а потом появится ячейка с новым значением, одиннадцатым, для которой лист не создан?  
Я так понимаю, макрос покажет сбой.
создание макроса для форматирования текста
 
{quote}{login=}{date=09.08.2009 03:06}{thema=Re: Re: }  
А что, мой макрос разве этого не делает???????{/post}{/quote}  
Прошу прощения, не обратил внимания в образце. Действительно делает.    
А как задать команду, чтобы при появлении нового значения в ячейке "А" новый лист с таким же названием создавался автоматически?
создание макроса для форматирования текста
 
EducatedFool, спасибо, Ваш образец делает почти все, что мне нужно. Единственное - можно ли скопировать все данные построчно на отдельные листы с названием первых ячеек строк?
создание макроса для форматирования текста
 
1. Видите ли, я специально указал ячейки А1 и А3 одинаковыми. Поэтому строки 1 и 3, после форматирования, мне нужно скопировать на один и тот же лист с названием "2-3-4". В столбце А несколько тысяч строк, а значений его ячеек всего десяток, поэтому ячейки обязательно будут повторяться в исходной таблице.  
2. Я планирую создать для удобства работы еще несколько кнопок для запуска других макросов на первом листе и просто хотел понять, как это сделать.
создание макроса для форматирования текста
 
Здравствуйте!  
С помощью Уважаемых посетителей этого форума мне удалось сделать макрос, считывающий информацию из интернета, за что огромное Вам всем спасибо!  
Не поможете мне с продолжением моей работы? Вопросов сразу несколько. Сейчас передо мной стоит следующая задача - отформатировать и рассортировать полученный большой массив информации из нескольких тысяч строк по заданным критериям. Полученная информация выглядит примерно следующим образом, построчно:  
 
1-2-3-4 |  Андрей  |  Борис  | Владимир | ... |  
4-5-6-7 | Геннадий | Дмитрий | Евгений  | ... |  
1-2-3-4 |  Павел   |  Роман  |  Сергей  | ... |  
 
Образец таблицы я приложил в файле и воспроизвожу его в этой теме только для того, чтобы легче было сформулировать свои вопросы, которых у меня несколько.  
1. В каждой ячейке первого столбца мне нужно удалить первые два символа, в данном случае это "1-", "4-", "1-".  
2. Второй столбец удаляется, а на его место переносятся первые буквы слов из третьего и четвертого столбцов, разделенные пробелом. После чего 3-й и 4-й столбцы удаляются. То есть вот так:  
 
2-3-4 |  Б В  | ... |  
5-6-7 |  Д Е  | ... |  
2-3-4 |  Р С  | ... |  
 
3. Полученные записи построчно копируются в листы, поименованные по значению первой ячейки строки. То есть Лист("2-3-4") и Лист("5-6-7").  
4. Если можно, подскажите мне, как вывести на экран запуск этого макроса с помощью MsgBox.
Процедура для последовательного заполнения столбца
 
Спасибо большое! И прошу прощения за свой первоначальный неполный вопрос!
Процедура для последовательного заполнения столбца
 
А если мне нужно будет последовательно переносить данные из нескольких ячеек в несколько столбцов, например, J27 -> B1,B2,B3..., J28 -> C1,C2,C3?
Процедура для последовательного заполнения столбца
 
Прошу прощения за опечатку. Следующей ячейкой в столбце, куда мне нужно будет перенести новые данные, будет, конечно, "А2", а не "В1".
Процедура для последовательного заполнения столбца
 
Я не знаток VBA, поэтому испытываю сложность со следующим действием: с web-страницы считывается таблица и, далее, по процедуре  
       Range("J26").Select  
       Selection.Copy  
       Sheets("Лист2").Select  
       Range("A1").Select  
       ActiveSheet.Paste  
переносится в ячейку А1 на соседний Лист2, который предполагается для консолидации данных. После этого происходит считывание таблицы со следующей web-страницы и мне нужно новые данные из ячейки J26 поместить уже в ячейку В1.  
Не подскажете, какую процедуру лучше использовать в данном случае? Чтобы она переносила данные в следующую пустую ячейку в столбце?
Копирование данных с web-страницы в Excel.
 
Так действительно удобнее и короче. Спасибо!
Копирование данных с web-страницы в Excel.
 
Здравствуйте!  
Я записал макрос для переноса таблицы с web-страницы в Excel. Макрос приведен ниже. Web-страница периодически обновляется и проблема заключается в том, перед исходной web-таблицей номер 2 иногда появляется дополнительный текст, который Excel воспринимает также как таблицу и моя получает номер 3. В итоге считывается ненужная информация, которая нарушает систему получения данных.  
Не подскажете, что можно сделать в этой ситуации? Может быть каким-то образом настроить в макросе идентификацию текста в первой ячейке исходной таблицы? Эта ячейка всегда неизменна.  
 
Sub Macro1()  
'  
' Macro1 Макрос  
'  
 
'  
   With ActiveSheet.QueryTables.Add(Connection:= _  
       "URL;http://www.tks.ru/currency/20090806", Destination:=Range("$A$1"))  
       .Name = "20090806_2"  
       .FieldNames = True  
       .RowNumbers = False  
       .FillAdjacentFormulas = False  
       .PreserveFormatting = True  
       .RefreshOnFileOpen = False  
       .BackgroundQuery = True  
       .RefreshStyle = xlInsertDeleteCells  
       .SavePassword = False  
       .SaveData = True  
       .AdjustColumnWidth = True  
       .RefreshPeriod = 0  
       .WebSelectionType = xlSpecifiedTables  
       .WebFormatting = xlWebFormattingNone  
       .WebTables = "2"  
       .WebPreFormattedTextToColumns = True  
       .WebConsecutiveDelimitersAsOne = True  
       .WebSingleBlockTextImport = False  
       .WebDisableDateRecognition = False  
       .WebDisableRedirections = False  
       .Refresh BackgroundQuery:=False  
   End With  
End Sub
Страницы: 1
Наверх