наверно задачка простенькая, но то, что получилось найти в интернете не могу адаптировать под свои нужды.
нужно: чтобы в выделенном диапазоне визуальное отображение количества знаковпосле запятой после применения макроса изменялось в зависимости от того, сколько в числе знаков перед запятой. Условий очень много, но если будет каркас, код я расширю, но как сделать чтобы в выленном диапазоне числа форматировались вот так:
числа х>=100 отображаются в формате "12 486" (пример) числа 100>x>=10 отображаются в формате "34,8" числа 10>x отображаются в формате "34,21"
Всем привет, знаю, что вопрос может быть глупым, но я не нашел аналогичных тем
Появилась следующая проблема, которой раньше не было, она не весьма существенная, но напрягает - раньше новосозданная книга excel открывалась с "сеткой", а теперь что-то случилось и постоянно приходится вручную включать через "Вид" - "сетка" или Параметры "дополнительно". Из-за чего это могло произойти и как поправить чтобы в новосозданных книгах эксель сразу отображалась сетка.
Всем добрый день, сразу говорю, я искал через поиск схожие темы, но подобных решений так и не нашел, что странно
Штука в следующем - есть десяток функций (UDF), которые сами по себе прекрасно работают, но для того, чтобы они работали, приходится постоянно в открытом состоянии держать файл excel в котором они прописаны. Я пробовал перенести их в личную книгу макросов, но там они работать перестают, вотс.... можно ли как-то сделать, чтобы при запуске новой книги - сразу были доступны функции?
Вот пример одной из них:
Код
Function СцепитьЭлемМассива(Массив)
Rem Ввод формулы: Ctrl+Shift+Enter
If IsArray(Массив) Then
СцепитьЭлемМассива = Join(Массив, "")
Else
СцепитьЭлемМассива = Массив
End If
End Function
Может кто знает - в Excele есть куча надстроек с картами, есть что-нибудь, что может построить тепловую карту, которую можно растянуть на большой большой формат типо А2. Как вариант есть Power Bi и Power View но в первом случае их нельзя распечатать, во втором нельзя сделать тепловую судя по всему только бабл карту
Кто может подсказать - увидел в интернете подобный график вклада товаров в рост всех продаж от одного периода к другому (см. приложение) Как это дело строится? по-возможности средствами Excel, если не вариант, то накрайняк Power View или Power BI
так как раз нужно чтобы было 95%+, вариант webley работает хорошо, сейчас вот пытаюсь массив 500 тысяч на 30 столбцов просчитать, буксует конечно комп., но направление точно то самое
Можно и так сказать, только это дело как-то нужно оптимизировать, чтобы не считать вручную. Формулами как-то не особо то выходит. Главное чтобы в эти 95% сначала вошли позиции от самой большой по удельному весу до менее значимых
Не совсем - речь идет про значения сверху вниз и дело не в 95% как таковых, процент можно варьировать. Есть основные товарные позиции к примеру например мясо 10.5% потом рыба 9.8%, как вот сколько нужно основных (не мелких а именно крупных позиций - от большого к малому) чтобы получилось минимум 95%
может я как-то не так объяснил - вот смотрите, у нас есть страны, есть товары которые они закупают, стран может быть много, как и товаров, но суть не в этом.
Нужно понять сколько товаров импортируемых каждой страной составляют к примеру 95% их закупок. если вручную посчитать к примеру Абхазию - то это 22 позиции если верить данной таблице (от самых значимых к менее).
Есть такая штука - таблица с плавающим количеством строк (товары) и столбцов (страны). Формат таблицы представлен в приложении.
Может ли быть какая-нибудь формула, которая позволит просчитать количество позиций товаров в каждой стране, которые дают в сумме дадут 95% (например в Абхазии это 22 позиции).
В гугле решения не нашел и возможные варианты с "счет" у меня как-то не зашли.
Sub xmltoxl()
Dim f As String
Dim wbk As Workbook
Dim s As Integer
Dim tBook As Workbook
Dim MySht As Worksheet
Set tBook = ThisWorkbook
Set MySht = tBook.Sheets(1)
MySht.Cells.ClearContents
f = Dir("C:\Users\merk\Desktop\Exc12" & "\*.xml")
s = 0
Do While Len(f) > 0
Set wbk = Workbooks.OpenXML("C:\Users\merk\Desktop\Exc12" & "\" & f)
If s = 0 Then
wbk.Sheets(1).Cells.Copy Destination:=MySht.Cells
LastRow = MySht.Range("A" & Rows.Count).End(xlUp).Row
MySht.Range("Z1:Z" & LastRow) = f
Else
LastRow = MySht.Range("A" & Rows.Count).End(xlUp).Row
NextRow = LastRow + 1
wbkLastRow = wbk.Sheets(1).Range("A" & Rows.Count).End(xlUp).Row
wbk.Sheets(1).Rows("1:" & wbkLastRow).Copy Destination:=MySht.Rows(NextRow)
NewLastRow = MySht.Range("A" & Rows.Count).End(xlUp).Row
MySht.Range("Z" & NextRow & ":Z" & NewLastRow) = f
End If
MySht.Columns("Z").Cut
MySht.Columns("A").Insert
s = s + 1
wbk.SaveAs Filename:="C:\Users\merk\Desktop\Exc12" & s & ".csv"
wbk.Close False
f = Dir()
Loop
End Sub
Правда не пойму почему первую строчку он пишет /Файл и начинает только со второй
кто подскажет - может есть какой макрос, который может конвертировать массив файлов формата многоуровневый XML из одной папки в другую папку в такой же массив файлов CSV
сразу оговорюсь - файлов очень много и суммарное количество строк превышает 70 млн
Объединение десятков документов XML с одинаковой структурой в один Excel с помощью VBA, Объединение десятков документов XML с одинаковой структурой в один Excel с помощью VBA
Объединение десятков документов XML с одинаковой структурой в один Excel с помощью VBA, Объединение десятков документов XML с одинаковой структурой в один Excel с помощью VBA
Объединение десятков документов XML с одинаковой структурой в один Excel с помощью VBA, Объединение десятков документов XML с одинаковой структурой в один Excel с помощью VBA
Ситуация следующая - на днях получил WinRar на пару гигов (открытая база ФНС), в котором находится добрая сотня документов в формате XML, они подгружаются в Excel поштучно, но это занимает прилично времени. При этом столбцы пляшут
Может кто подсказать макрос VBA, который объединит эту сотню документов, хранящихся в одной папке в единый док. (пример этих чудо таблиц в xml загрузил сюда https://yadi.sk/d/FkMWmBzc3VUkms т.к. их не получилось подгрузить напрямую)
Для быстроты расчета можно значительно уменьшить количество столбцов до тех, которые есть в приложенном доке "Названия нужных столбцов", который доступен в яндекс диске
ух спасибо, вроде всё работает если выделять данные вместе с шапкой (т.е. сортировка тогда спускается на уровень ниже и сортирует), есть небольшая загвоздка т.к. если речь идет про "кусок" таблицы который нужно так отсортировать - то сортируются данные и сверху и снизу, а не в выбранном диапазоне и каждый раз приходится вырезать и сортировать макросом отдельно
Подскажите, у меня есть 2 вида таблиц, данные в которых нужно отсортировать (см. приложение), но вручную это дико долго. Автомакросер не спасает, т.к. при изменении числа столбцов или строк с данными он становится бесполезным. Как создать макрос, чтобы в выделенном диапазоне он поочереди сортировал слева направо значения в зеленой зоне и подтягивал значения рыжей. Пример конечного результата также прилагается.
Добрый день, подскажите пожалуйста макрос - чтобы по-очереди проверял строки в таблице на предмет какого-нибудь условия, например слова "отказано", а затем закрашивал всю строку целиком к примеру в красный цвет. и как тоже самое обратить для столбцов
Тем, что задача совершенно другая стоит, сделать быстрый и удобный цветовой калькулятор, который позволит за 4-5 сек накидать нужные комбинации и быстро просчитать не сумму а отношение долей к общему и вывести в отдельный диапазон который уйдет в дальнейшую работу
Под шапкой я имел ввиду - строчку с годами, она вверх не перескакивает единственное что в ней постоянно это упоминание в каком то виде годов, а ячейка из первого столбца принимает разные значения типо Importers, Exporters, Product Codes и несколько других, в приложении разные виды табличек
SAS888 написал: P.P.S. Абсолютно согласен с тем, что такой (цветной) подход к реализации задачи не есть правильный. Подумайте. Может стоит использовать другой способ пометки строк?
спасибо за пояснение, частично разобрался и подправил код, не понял единственное как сделать чтобы копировалась шапка при данной таблице и просчет начинался со столбца B, в остальном всё заработало
SAS888, спасибо! а почему эта штука ошибку в строке ReDim a(1 To 4, 1 To c): ReDim tmp(1 To c) выдает когда я другие таблицы использую более масштабные или более мелкие. Я вроде понимаю, что тут что-то связано с выбором массива, но немного не вьезжаю, что подправить чтобы универсально стало
не знаю можно ли такое вообще физически реализовать в VBA
нужна цветовая считалка - есть список товаров и 5 базовых цветов excel; красным пользователь выделяет общее количество, над красным всегда будет строчка с годами. Оранжевым, желтым салатовым и зеленым выделяются группы значений которые за определенный год должны быть просуммированы между собой и посчитаться долей к общему. после нажатия на макрос должны вылезти доп. строчки с просчитаными значениями в самом начале. Дополнительная сложность: если к примеру есть желтый и оранжевый а зеленых нет. ну и естественно красным всегда выделена 1 строчка, а цветами может быть выделена как одна строчка, так и несколько, совместных или нет