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

Страницы: 1
Не верно суммирует десятичные значения
 
Всем привет,
в надстройке есть возможность суммировать/минусовать/умножать/делить выделенные значения. Если же у меня как разделитель стоит точка, а не запятая, то суммируется не корректно.
К примеру есть число 78.2, я хочу к нему прибавить 0.5, до прибавляется 5, а не 0.5.
А иногда просто вообще ошибку "1004" выводит...
Не активные TextBox в форме
 
Всем привет, надстройка у меня на английском и на немецком Экселе стоит (возможно в этом и кроится проблема, одноко большинство функций работает корректно). Проблема с Функцией "Text", которая находится в "Cells" (это я про ленту), когда открываю окно, иду на вкладку "Delete" и в ней не могу кликнуть в окно, где нужно вписать число первых , последних и между знаков.
Может быть кто знает как проблему решить?
Изменено: KrabNaGalerah - 27.07.2023 18:03:48
vba редактор не отображает код
 
Всем привет, столкнулся с такой проблемой. Прислали мне пару файлов xlsm, макросы там написаны прямо на листах. Нажимаю, чтобы открыть, а код не открывается, такое ощущение, что окно зависло. Самое неинтересное, что эти же файлы у других людей открываются. Даже у меня вначале я каким то чудом их смог открыть.

Если создаю новые файлы, то все открывается нормально.

Пробовал так же файлы сохранять как xlsb, не помогает.

Эксель 2019, дрова обновил. В чем проблема может быть?
Изменено: KrabNaGalerah - 23.06.2023 07:17:25
Ошибка при загрузке таблицы в PQ, Немецкий Эксель
 
Изучаю PQ по книге Николая, сейчас начал обрабатывать файл "Подстановка сразу всех найденных значений - старт.xlsx", решил считать таблицы не вручную, а с помощи надстройки PLEX "импортировать "загрузить все таблицы с листа". Запросы загружаются, но вылазит ошибка.
У меня немецкая винда 10 и так же немецкий эксель 2016.  
vba, словарь с 2D массивом, функция для обработки массива в словаре.
 
Всем примет. Есть у меня словарь на несколько тыс. ключей, в каждом ключе есть свой массив данных (Variant(1 to n, 1 to 2). Нужно написать функцию которая бы обрабатывала массив данных и возвращала бы определенное значение.

В качестве примера написал простенькую функцию, чтобы был понятен мотив.

Код
Sub test12()
    Dim dict As New Dictionary
    Dim arr As Variant
    
    ReDim arr(1 To 3, 1 To 2)
    'создаю массив для примера
    For i = 1 To 3
        arr(i, 1) = i
        arr(i, 2) = i * 10
    Next i
    dict.Add "A", arr
    
'функция о которой идет речь
    myval = changedict(dict)

End Sub


Function changedict(ByVal dict_ As Dictionary) As String
    var_ = dict_("A")
    var_(1, 1) = 999
    var_(2, 1) = 888
    dict_("A") = var_
    changedict = "something"
End Function
Во первых проблема в том, что я не могу на прямую изменить значение массива, если обращаюсь через словарь, к примеру вот так:
dict_("A")(1, 1) = 999
Нужно сначала массив перекидывать в var_, менять все, потом закидывать обратно в словарь, можно ли здесь как то проще сделать?

Далее, все ровно какое свойство для словаря я выбираю (ByRef или ByVal), значения в массиве изменяются так же в оригинальном словаре. Я понимаю, что здесь я передал только словарь как ByVal, как мне это сделать так же и для массива?
Заранее благодарю!
Изменено: KrabNaGalerah - 20.02.2023 15:01:58
Перенос таблицы из word с помощью VBA, оптимизация кода
 
Всем привет,

есть у меня пару ворд файлов, длинных, с большой таблицей в примерно 3к строк (выгрузка). Эти таблицы нужно закинуть в эксель.
Написал код. Закидываю значения в массив, потом уже буду с этим массивом дальше работать. Однако обработка оставляет желать лучшего, около 5ти минут считывает данную таблицу. Код не большой, может быть кто то уже делал похожие вещи и знает хитрости, к примеру может быть скопировать таблицу как нибудь целиком, или что нибудь похожее.

Всем заранее спасибо!

Код
Sub SaveTableToArray()
    Dim tableArray() As Variant
    Dim wordApp As Word.Application
    Dim tbl As Word.Table
    Dim i As Long, j As Long

    Set wordApp = New Word.Application
    wordApp.Visible = False
    wordApp.Documents.Open "D:\Test\doks.doc"
    Set tbl = wordApp.ActiveDocument.Tables(2)

    ReDim tableArray(1 To tbl.Rows.Count, 1 To tbl.Columns.Count)

    For i = 1 To tbl.Rows.Count
        For j = 1 To tbl.Columns.Count
            tableArray(i, j) = tbl.Cell(i, j).Range.Text
        Next j
    Next i

    wordApp.Quit
    Set wordApp = Nothing
End Sub
Работа на немецком языке, windows и excel нанемецком
 
Всем привет, собственно вопрос написан в шапке, есть ли смысл покупать надстройку, если язык системы и экселя немецкий?
Сохранить пользовательски функции в Power Query
 
Всем привет.
У меня есть несколько своих функций (для power query), которые хранятся в отдельной книге. Проблема в том, что эти функции мне достаточно часто нужны и приходиться открывать книгу с функциями, копировать и вставлять в нужный мне файл.
Есть ли возможность закинуть эти функции в PQ по дефолту? Что-то типа как мы делаем с надстройкой, там тоже можно прописать функции, которые можно в любом эксель файле использовать.
Ну или поделитесь, как у вас обстоит менеджмент таких функций. У меня их пока не много, но проблема будет расти.
Всем спасибо!  
Суммирование данных по параметрам, формула массива
 
Всем привет, попалось достаточно интересное задание. Вроде бы все стандартно, у нас есть округи и города к ним. Нужно посчитать сумму чисел, которые входят в Округ.

Проблема в том, что нельзя использовать дополнительные столбцы (как мне сказали). Формула должна быть достаточно простой, но у меня выходит какой то Франкинштейн. Может быть кто-то посоветует более простой вариант формулы? Или просто другой вариант, может для меня он будет проще.

Формулы нужно записать в желтые ячейки.

Спасибо заранее!
PQ добавить столбец в таблицу
 
Всем привет. Есть файл, в нем несколько листов, которые нужно консолидировать.

В первом шаге у меня имеются листы в виде таблиц в каждой строке. Чтобы все корректно собралось, обрабатываю таблицы методом добавления нового столбца и в нем делаю изменения в таблице, вот к примеру: #"Added Custom" = Table.AddColumn(#"Removed Columns", "Custom", each Table.Skip([Data],2))
Здесь я удалил первые 2 строки из каждой таблицы.

Теперь мне надо создать столбец по которому я буду фильтровать таблицы. В обычной таблице это сделал бы так:
( #"Added Custom1" = Table.FillDown(Table.AddColumn(#"Removed Columns1", "Custom", each if [Column1] = "Накладные" then "skip" else null),{"Custom"})
)

Но не совсем понимаю как мне это сделать для каждой строчки в таблице.

Спасибо за подсказки
Добавить новые строки в существующий массив (VBA, Variant)
 
Здравствуйте, до этого создавал массивы с четкими размерами, сейчас понадобился табличный массив в который будет добавляться новая строка.
Проблема в том, что обычный Redim удаляет все данные, пробовал и с Preserve, но там вообще ошибку выдает, видимо работает только с однодимензиональным массивом.
В общем вопрос, как легко и без танцев с бубном добавлять новую строку в массив, при этом не терять существующие данные?
Спасибо!
Не могу оплатить книгу
 
Всем добрый день, решил купить книжку "подробное руководство по "высшему пилотажу"", выбираю в качестве оплаты визу, но почему то не срабатывает (пробовал не один раз и с разными промежутками). Сам живу в Германии, проблема может быть в этом? Может быть есть еще какие то способы оплаты? Спасибо за ответ.
Изменено: Anton Yaraschewski - 02.09.2022 21:43:02
Страницы: 1
Наверх