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

Страницы: 1
Отправка диапазона ячеек по почте
 
Раньше всегда посылал рабочие книги по почте используя макросы из этой темы: http://www.planetaexcel.ru/tip.php?aid=156 Однако, сейчас появилась необходимость отправлять диапазон ячеек(то есть отправлять не книгу, а диапазон ячеек из которого состоит таблица), прошу вашей помощи. То есть в письме хочется видеть таблицу, а не вложенный файл.
Поиск данных со смещением по строкам.
 
Здравствуйте!  
 
У меня такая проблема, я считаю итог по каждой группе инструментов и эти значения находятся постоянно в разных ячейках, что заметно затрудняет работу с ячейками С3-С4-С5, приходится постоянно исправлять формулы. Может быть есть какой-то способ, чтобы это можно было бы избежать? (пример прилагается)
Несколько условий в формуле
 
Здравствуйте!    
 
У меня в колонке А может быть 4 переменных (Case1, Case2, Case3 и Case4), в зависимости от того, какая переменная надо делать разный расчет:    
 
1) Если в ячейке А3 Case1, то B3*C3.  
2) Если в ячейке A3 Case2, то B3*D3.  
3) Если в ячейке А3 Case3, то F3*N3.  
4) Если в ячейке А3 Case4, то M3*S3.    
 
Хотелось бы это каким-то чудом видеть в одну формулу :) Заранее благодарен за любую помощь!
Удаление символов в диапазоне
 
У меня есть диапазон (100,60) и в нем много чисел, которые содержат более 15 знаков после запятой, а мне надо получить из них значения. Мне кажется, самое просто это во всех ячейках диапазона оставлять только первые 10 чисел, а остальное удалять. Хотелось бы решение сразу на весь диапазон :)
Перевести число в дату
 
У меня есть даты в формате 20120228, но хотелось бы их перевести в формат 2012.02.28, одним словом из общего в числовой. Желательно было бы это через VBA сделать, хочется добавить в макрос, но можно и формулой.
Конвертирование "даты" в число
 
Я получаю данные через DDE и они приходят в формате "общий" и сталкиваюсь с такой проблемой, что числа 3,12 и т.д. приходят в виде дат "40421", проблема не решается добавлением новых столбцов или изменением формата ячеек. Возможно кто-то может подсказать макрос, который в диапазоне мог бы пересчитывать такие "40421" в нормальные значения "3,12".
Ошибка 400 во всех макросах
 
Добрый день!  
 
Сегодня Excel выдал критическую ошибку и перезапустился, после чего все макросы, которые до этого работали без ошибок начали выдавать ошибку 400. Кто-то сталкивался с подобной ситуацией? Как это можно вылечить?
[VBA] Вставить пустые ячейки по условию заливки
 
Вопрос довольно простой, есть большой отчет, с форматированием, хочу вставить пустые ячейки и значения в них. В пятницу вечером не могу сообразить, что может быть не так в простом макросе, вставляю ячейки по условию первого столбца. Но есть одно НО, закрашенная ячейка является объединенной (просьба не бить). Очень не хочется возиться, чтобы сделать unmerge, потом искать значения и снова объединять их...    
 
For i = 1 To 30  
If Cells(i, 1).Interior.Color = RGB(220, 230, 241) Then  
Range(Cells(i, 1), Cells(i, 3)).Insert Shift:=xlDown  
Range(Cells(i, 1), Cells(i, 3)).ClearFormats  
i = i + 1  
End If  
Next i
Перенос данных с форматированием
 
Добрый день!  
 
Всегда переносил данные через обычную формулу    
Sheets("").Range("").Value = "='[тест.xls]Лист'!Ячейка"
Однако появилась необходимость при переносе сохранять форматирование, никто не подскажет устойчивую конструкцию для переноса данных с сохранением форматирования? Переносится примерно 10 000 ячеек. Перенос осуществляется из открытых файлов.
Оперирование заголовками при работе с таблицами
 
Интересует вопрос, возможно ли при работе с Cells, Items, Range вместо Columns использовать названия заголовков в таблицах. И если можно, то как?    
 
P.S. Практически все темы, которые выдаются поиском выдают ошибку, возможно ограничение на размер страницы стоит на работе.
Поиск и перенос данных между листами
 
Не так давно поиск и перенос значений между книгами и листами перестал вызывать у меня затруднения, однако сейчас столкнулся с проблемой, как переносить и пересчитывать значения после выгрузки из 1С. Пример в файле, вроде бы там все довольно понятно. Могу дать любые пояснения по файлу.    
 
У меня вызывает затруднения пересчет, с переносом и поиском трудностей вроде бы нет. Сейчас реализую сложным методом переношу по диапазонам до "валюта актива" в разные диапазоны на другом листе, потом удаляю все кроме "Валюта актива" и "Прочие расходы" и уже тогда пересчитываю. Но это довольно запутано для меня.
2-е таблицы на листе, корректный переход от одной к другой
 
У меня есть две обыкновенные таблицы на одном листе, так сказать summary по всему файлу.  
 
Первая меняется от 15 до 40 строк, смысл такой, что хочу сделать некоторые преобразования по столбцу H второй таблицы, а для того, чтобы не трогать первую, хочу найти начало второй таблички. В столбце H стоит значение "итоговое значение", поэтому пытаюсь найти его через строки, например, cells(i,8) и если значение равно "итоговое значение", тогда первой строке новой таблицы присвоить это значение i... curr_row = r.Row(i)  
 
не знаю, как это правильно реализовать, возможно через операторы do loop, но я никогда не сталкивался, поэтому пока у меня не получается. Если у кого есть возможность, то прошу помочь)
Проблема с очисткой и построением сводных таблиц
 
У меня такой вопрос, иногда(раз в две недели) меняется структура сводной таблице на листе "итоги", я её удаляю макросом:    
ActiveSheet.PivotTables("PivotTable1").PivotSelect "", xlDataAndLabel, True  
   Selection.ClearContents  
Однако, при создании новой таблицы на этом листе, я не могу воспользоваться именем "PivotTable1", а доступно уже только следующее "PivotTable2". При создании таблицы пользуюсь:    
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _  
       "Table1", Version:=xlPivotTableVersion16).CreatePivotTable _  
       TableDestination:="итоги!R3C1", TableName:= _  
       "PivotTable2", DefaultVersion:=xlPivotTableVersion16  
 
Помогите избавиться от этой проблемы, пожалуйста.
Копирование формул
 
Cells(i, 16).Formula = Cells(i - 1, 16).Formula  
 
Подскажите, как сделать так, чтобы формула копировалась не предидущая т.е.  
 
Не так, чтобы в строке С17 была формула А16 + B16, которая в С16, а формула A17 + B17. Заранее спасибо :)
Поиск условия для форматирования (VBA)
 
Появилась задача отформатировать несколько практически одинаковых файлов, только вот форматирование попросили сделать извращенное, честно говоря не понял, как получить это с помощью форматирования.    
 
Сейчас я делаю это руками, через CTRL выделяю диапазоны от одного полужирного (включительно) до другого. Но так как файлы большие до 40 диапазонов, то это довольно утомительно и долго, хотелось бы автоматизировать. Пример файла, прилагаю.
Растянуть рисунок с помощью макроса
 
Есть 14 листов в книге, на каждом по одному графику в формате .png, но все они почему-то в два раза уже по горизонтали. И мне хотелось бы автоматически их растягивать, пытался записать макрорекордером эти действия для одного листа, вот что он выдал:    
 
ActiveSheet.Shapes.Range(Array("Рисунок 1")).Select  
Selection.ShapeRange.ScaleWidth 2.01, msoFalse, msoScaleFromTopLeft  
 
Однако, если сделать это снова, но уже с помощью макроса, то размер увеличится и по вертикали, то есть сами пропорции рисунка сохранятся, что неправильно в моем случае.  
 
P.S. Пример много весит из-за правил выложить не могу, если в нем будет необходимость, то что-нибудь придумаю.
Поиск и копирование по значению с одного листа на другой
 
Суть в том, что ищем название в определенной колонке, копируем значение, которое находится через колонку в определенную ячейку на другом листе. Макрос вроде бы довольно простой, но что-то я в нем делаю не так, так как дилетант в этом деле. Посмотрите, пожалуйста. Макрос в первом листе.
СУММЕСЛИМН в vba
 
Раньше считал сумму итоговую через СУММЕСЛИМН или через СЧЕТ... но сейчас уже получились объемы (~6000 строк) Стало просто неудобно, может кто подскажет, как это все макросом заменить?    
 
И еще вопрос есть по поиску в больших диапазонах, где надо много раз по одному и тому же столбцу (A) пройтись, причем на 10 листах(лист 1, лист2, лист3...лист10), но по поиску разных значений. Выбрать Петрова, скопировать на лист11 в определенную ячейку, потом Иванова, затем Сидорова и т.д. Есть ли какой-то способ облегчить макрос поиска? Если каждый раз записывать макрос через for each ws и for each r.Row, то это никакого места в коде не хватит...
Макрос в функцию
 
У меня есть макрос, который я хочу переделать под процедуру:  
 
Sub 1 ()  
Dim TickerCol as variant  
Dim SpotCol as double  
 
далее присваиваются столбцы    
 
TickerCol = 3  
SpotCol = 4  
IVbid = 40  
 
Curr_row = 3  
 
While Worksheets(read_sheet_name).Cells(curr_row, TickerCol).Value <> ""  
Spot = Worksheets(read_sheet_name).Cells(curr_row, SpotCol).Value  
 
далее много вычислений и запись результатов в IVbid  
 
End Sub  
============================================================­=========================  
Для создания функции, переношу переменные в скобки, Public Function Ivcalc (...)    
Далее проводится расчет  
Exit function  
============================================================­=========================  
Чтобы воспользоваться функцией в другом сабе, я декларирую переменные по новой  
 
Sub 2 ()  
 
TickerCol = X(могут меняться)  
SpotCol = X(могут меняться)  
IVbid = X(могут меняться)  
 
Curr_row = X (могут меняться)  
 
и обращаюсь к функции через    
Call[Public function IVcalc]
 
End Sub  
 
Помогите разобраться, где я не прав и что не так. Делаю такое первый раз, могу быть полностью неправ.
Редактирование файлов с диаграммами
 
Аналогичной темы на форуме не нашел.  
 
Есть отчеты по датам в каждом из которых по 22 листа с данными, на основе этих отчетов готовится месячный отчет. После всех операций, остаются 2 листа ("лист1" и "лист2" + лист ДанныеДиаграмм, который не виден). На листе2 есть диаграмма, которую нужно вставлять на первый лист. Собственно задача передо мной стоит следующая: копировать эту диаграмму на первый лист без привязки к листу "ДанныеДиаграмм", так как эти листы хотелось бы макросом удалять сразу же после копирования диаграммы на лист1.  
 
Может есть у кого мысли, как поиском отыскать диаграмму, убрать привязку к данным и перенести ее на первую пустую строку листа1, как вариант в первую пустую ячейку столбца А.
Помогите с копированием по условию
 
У меня есть таблица с параметрами опционов, мне требуется произвести замену по всей таблице. Условие следующее, если во втором столбце значение = "ECBOT", то копировать первые 4 левых символа из ячейки А (той же строки) в Ячейку А(той же строки). Сам сделать не смог через Then
Удаление диапазона по значению в ячейке
 
Есть большая таблица до BA и где-то на 500 позиций. Каждая ячейка заполнена довольно сложными формами для расчета опционов. Так вот определяющая колонка P, если в ней заканчиваются значения, то и считать ничего не нужно во всех следующих колонках. Необходимо выделять область с началом в этой ячейке, где значение стало "" и до BA500 и очищать содержимое.    
 
Раньше всегда делал через обрезание пустых строк, но сейчас встала необходимость оставлять данные в колонках левее P, а удалять(очищать содержимое) только то, что справа. Кол-во строк статично 493 и меняться не будет.
Проблема с переносом формул в vba
 
У меня такая проблема, количество формул на листе разрослось до катастрофических масштабов, поэтому решил их перенести в vba, чтобы ничего не сбить ручками. Так вот при копировании некоторых формул выдается ошибка, пример формулы прилагается ниже:    
 
Sheets("Тест").Range("R3").FormulaLocal    
= "=IF($O3="OPT";IF(LEFT($E3;1)="C";$Q3/$D3-1;$D3/$Q3-1);"")"  
Range("R3:R50").Value = Range("R3").Formula  
 
Ругается на "OPT", тут идет сравнение по трем буквам в столбце O, если OPT значит это опцион и далее идет выбор колл или пут. Помогите разобраться, что не так. Возможно где-то в самом начале надо задать это как переменную или что-то еще...
Замена знака в ячейке на всех листах
 
Появилась необходимость брать имя страницы из шапки таблицы, а именно из ячейки B2, но так, как при автоматическом переименование страниц excel не разрешает использовать ":", то появилось желание в ячейке B2 на всех листах поменять ":" на "-".  
 
Sub ЗаменаДвоеточий2()  
Dim myWorksheet As Worksheet, x As Range  
For Each myWorksheet In Worksheets  
Range("B2").Select  
Selection.Replace What:=":", Replacement:="-"  
Next  
End Sub  
 
Написал для себя макрос, но он не работает для всех листов сразу, помогите разобраться. Желательно укажите ошибку, если не сложно.
Перенос ячеек из строки в столбцы по признаку
 
Впервые столкнулся с таким заданием. У меня есть файл (приложение). В нем надо произвести форматирование по определенному содержимому первой ячейки в строке заполнять определенный диапазон ячеек по столбцам до наступления нового события в первой ячейки n-ной строки.    
 
Что должно получиться выделено красным цветом. Пожалуйста, помогите разобраться, как эти условия кодом описать. Применить это к нескольким листам и провести форматирования я могу сам с помощью макросов, а вот основное, что нужно не получается сделать.
Помогите с выбором.
 
Получил файл с 10-ю страницами из нескольких файлов. Все страницы примерно однотипные, меняется ширина некоторых таблиц и сами данные в таблицах. Суть моей задачи сводится к тому, что в середине каждого из листов появляется уникальная надпись "Дата экспирации" (появляется она в диапазоне от 50-120 строки) до которой мне надо удалить все строки, кроме первых 3. Помогите эту с виду простую задачку решить.
Страницы: 1
Наверх