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

Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 162 След.
Многопользовательский excel
 
Многопользовательский Excel это - Microsoft Access
Изменено: New - 07.02.2024 19:16:26
[ Закрыто] с праздниками!,
 
=ВПР(ТЕКСТ(ДАТА(ГОД(AO1);МЕСЯЦ(AO1);1);"ДД.ММ.ГГГГ");$AP$1:$AQ$27;2;0)
Поиск через VBA по массиву со скрытием
 
katinakati, вам вот так надо, чтобы отображалось ?

Изменено: New - 28.12.2023 15:58:21
Поиск через VBA по массиву со скрытием
 
Код
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim LastRow As Long
    If Not Intersect(Target, Range("A2")) Is Nothing Then
        On Error Resume Next
        With ActiveSheet
            .Outline.ShowLevels RowLevels:=3
            .ShowAllData
            LastRow = .Cells(.Rows.Count, "E").End(xlUp).Row
            .Range("A9:E" & LastRow).AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=.Range("A1").CurrentRegion, Unique:=False
        End With
    End If
End Sub
Изменено: New - 28.12.2023 15:54:25
Создание базы данных в Excel, настройка форм ввода
 
по моему, это дубль вот этой темы https://www.planetaexcel.ru/forum/index.php?PAGE_NAME=read&FID=1&TID=161753
VBA. XLSX to CSV, Нужна помощь в доработке скрипта
 
Евгений Смирнов, Евгений, давай на "ты" )  Я воспринимаю всех постоянных участников нашего форума как друзей
Изменено: New - 03.12.2023 12:20:20
VBA. XLSX to CSV, Нужна помощь в доработке скрипта
 
Евгений Смирнов, если строк будет меньше, чем kRow = 3000 (например, 100), то файл не сохранится и не появится в папке
P.S. Так же в каждый файл в конце добавляется пустая строка (vbNewLine), некоторым системам она будет мешать (строка пустая есть, а данных в ней нет)

P.P.S. С твоего разрешения
Код
Sub ExportToCSV_UTF8()
    Dim arrData As Variant
    Dim sPath As String, sSymbol As String, sFileName As String, sStr As String
    Dim QtyOfRows As Long, QtyOfCols As Long, LimitRows As Long, RowsCounter As Long, i As Long, j As Long
    
    sPath = ThisWorkbook.Path & "\"
    LimitRows = 3000 'ActiveSheet.Rows.Count
    sSymbol = "|"
    
    arrData = ActiveSheet.UsedRange.Value
    QtyOfRows = UBound(arrData, 1)
    QtyOfCols = UBound(arrData, 2)
    RowsCounter = LimitRows
    
    If QtyOfRows >= LimitRows Then
        sFileName = "1" & "_to_" & RowsCounter & ".csv"
    Else
        sFileName = "1" & "_to_" & QtyOfRows & ".csv"
    End If
    
    With CreateObject("ADODB.Stream")
        .Open
        .Charset = "UTF-8"
        For i = 1 To QtyOfRows
            For j = 1 To QtyOfCols
                sStr = CStr(arrData(i, j))
                If j <> QtyOfCols Then
                    .WriteText sStr & sSymbol
                Else
                    If i Mod LimitRows = 0 Or i = QtyOfRows Then
                        .WriteText sStr 'последняя строка в файле: не добавляем vbNewLine
                    Else
                        .WriteText sStr & vbNewLine
                    End If
                End If
            Next j
            If i = RowsCounter Or i = QtyOfRows Then 'сохранить файл, если достигли конца массива
                .SaveToFile sFileName, 2
                .Close
                If RowsCounter + LimitRows < QtyOfRows Then
                    RowsCounter = RowsCounter + LimitRows
                Else
                    LimitRows = QtyOfRows - RowsCounter
                    RowsCounter = QtyOfRows
                End If
                sFileName = RowsCounter - LimitRows + 1 & "_to_" & RowsCounter & ".csv"
                If i <> QtyOfRows Then .Open
            End If
        Next i
    End With
    
    MsgBox "Файлы сохранены в папку: " & sPath, vbInformation, "CSV"
End Sub
Изменено: New - 02.12.2023 23:32:00
Написание макроса, Ищу исполнителя
 
пишу в личку
Обменялись
Изменено: New - 30.11.2023 09:45:26
VBA. XLSX to CSV, Нужна помощь в доработке скрипта
 
Del
Изменено: New - 26.11.2023 20:19:36
VBA. XLSX to CSV, Нужна помощь в доработке скрипта
 
попробуйте так

Код
Sub ExportToCSV_UTF8()
    'CSV в кодировке UTF8+BOM
    Dim wb As Workbook
    Dim ws As Worksheet
    Dim sSymbol As String, txt As String
    Dim i As Long, j As Long, RowsLimit As Long
    Dim arr(), arr2()
 
    If MsgBox("Сохранить лист в CSV?", vbQuestion + vbYesNo, "Вопросы") = vbNo Then Exit Sub
    
    sSymbol = "|" 'символ-разделитель
    RowsLimit = 3000 'кол-строк строк в 1 файле
           
    Application.ScreenUpdating = False
    Application.Calculation = xlCalculationManual
    Application.DisplayAlerts = False
    
    Set ws = ActiveWorkbook.Worksheets("Итоговые цены")
    arr = ws.UsedRange.Value
 
    For i = LBound(arr, 1) To UBound(arr, 1)
        ReDim Preserve arr2(i - 1)
        For j = LBound(arr, 2) To UBound(arr, 2)
            If txt = "" Then
                txt = arr(i, j)
            Else
                txt = txt & sSymbol & arr(i, j)
            End If
        Next j
        arr2(i - 1) = Replace$(txt, Chr(34), "")
        txt = ""
    Next i
     
    For i = LBound(arr2) To UBound(arr2) Step RowsLimit
        Set wb = Workbooks.Add
        For j = i To i + (RowsLimit - 1)
            If j > UBound(arr2) Then Exit For
            wb.Worksheets(1).Cells(j - i + 1, 1).Value = arr2(j)
        Next j
        wb.SaveAs "d:\Clouds\Yandex.Disk\Магазин\pricelists\import\" & "Prices_marketplaces_from_" & i & "_to_" & i + RowsLimit & ".csv", xlCSVUTF8
        wb.Close False
    Next i
    
    Application.DisplayAlerts = True
    Application.Calculation = xlCalculationAutomatic
    Application.ScreenUpdating = True
    
    MsgBox "Готово", vbInformation, "Конец"
End Sub
Из набора данных , выделить массимы и нужные данные из него.
 
пишу в личку
Обменялись
Изменено: New - 24.11.2023 18:36:45
как упростить работу с большим массивом строк?, нужно найти решение для шустрой работы с базами
 
любой PQ'шник скажет - переводите данные (храните данные) в TXT формате - а забирать данные из TXT файла можно через Power Query и потом строить сводные, графики и т.д.
VBA не работает на чужом компьютере, VBA не работает на чужом компьютере
 
какая странная строка
Код
<Call ThisWorkbook.Worksheets(PANEL_SHEET_NAME).btn_Start_Click>

я так подозреваю, что на каком-то листе у вас есть кнопка, на которую привязан макрос и вы этой строкой пытаетесь нажать эту кнопку с нужным макросом. Может вам проще будет на пытаться макросом нажать эту кнопку, а просто запустить нужный макрос, вы же знаете его название, например,
Код
Call Мой_любимый_макрос
Изменено: New - 16.11.2023 21:28:32
Помогите пожалуйста советом по автоматическому заполнению накладной
 
да, но новичок не обратит внимание на точку с запятой, поэтому новичкам лучше всегда указывать 4-й аргумент в обязательном порядке
для новичков эти 2 формулы одинаковые
Код
=VLOOKUP(A8;Номенклатура!A:B;2;)
=VLOOKUP(A8;Номенклатура!A:B;2)

это только мы с вами понимаем в чём разница, а главное - когда применять одну, а когда вторую
Изменено: New - 12.11.2023 23:31:50
Помогите пожалуйста советом по автоматическому заполнению накладной
 
и раз вы "совсем не эксперт в Excel", то запомните, что у функции ВПР для вас (как не эксперта) не 3, а 4 аргумента, и в 4-м аргументе Вам всегда нужно указывать число 0 (или слово ЛОЖЬ), иначе вас в жизни ждут большие перемены - штрафы от начальства за ошибки в таблице, а может и увольнение...
Изменено: New - 12.11.2023 23:07:50
Динамический массив. Как вывести только 1 колонку?
 
попробуйте обернуть вашу формулу в ВЫБОРСТОЛБЦ( СОРТ(ФИЛЬТР)....;4)
Изменено: New - 11.11.2023 15:05:41
Формат таблицы испорчен, Excel перестал открывать таблицу. Пишет не верный формат или расширение.
 
а где файл-то ?
Сбор данных из реестров (таблиц) по определенным условиям
 
посоветовал ТС обратиться к Alien Sphinx
Сбор данных из реестров (таблиц) по определенным условиям
 
Пишу в личку
изменение большого кол-ва смет в exel связанных с общим источником данных
 
Давайте попробуем, пишу в личку
Формула СРЗНАЧ по отдельным Ячейкам не учитывая нуля, Формула СРЗНАЧ по отдельным Ячейкам не учитывая нуля
 
Код
=СУММ(F5;F25;F44;F63;F101;F139)/СУММПРОИЗВ((F5>0)+(F25>0)+(F44>0)+(F63>0)+(F101>0)+(F139>0))
Проблема с ВПР и ОКРУГЛТ
 
вставьте в ячейку F1 формулу =ОКРУГЛ(ОКРУГЛТ(E1;0,05);2) и протяните вниз
А так же замените запятую ( , ) на запятую ( , ) по всему столбцу А

P.S. да, у вас в столбце А нет числа 6,75, а есть 6,74999999999998
Изменено: New - 22.10.2023 14:02:01
Объединение массивов с непостоянной длиной
 
PaxomGG, вместо цитирования всего сообщения (которое ни вам ни нам не нужно), вы можете нажимать кнопку "Имя", которая находится на 1 см правее от кнопки "Цитировать"
Заменить в столбце данные по строкам новыми значениями по условию
 
вот так?
Код
Sub ReplaceURL()
    Dim arrB As Variant, arrC As Variant, arrI As Variant, arrJ As Variant
    Dim LastRow As Long, i As Long, n As Long
    Dim sURL As String
    
    With ActiveSheet
        If .FilterMode = True Then .ShowAllData
        LastRow = .Cells(.Rows.Count, "B").End(xlUp).Row
        arrB = .Range("B2:B" & LastRow).Value
        arrC = .Range("C2:C" & LastRow).Value
        arrI = .Range("I2:I" & LastRow).Value
        arrJ = .Range("J2:J" & LastRow).Value
    
        For i = LBound(arrB) To UBound(arrB)
            sURL = arrB(i, 1)
            For n = LBound(arrI) To UBound(arrI)
                If LCase(sURL) = LCase(arrI(n, 1)) Then
                    arrC(i, 1) = arrJ(n, 1)
                    Exit For
                End If
            Next n
        Next i
    
        .Range("C2").Resize(UBound(arrC), 1).Value = arrC
    End With
    
    MsgBox "Готово!", vbInformation, "Конец"
End Sub
Макрос как прописать вручную, Здравствуйте кто может помочь
 
приложите файл пример - как должно быть и как есть
Теряется знак табуляции при копировании текста
 
на самом деле это ваш комп что-то делает не так.
вот копируем текст из TXT, вставляем его в ячейку - да, визуально TAB не видно, но он там есть. Посмотрите номер 3-го символа в ячейке. Это код символа 9, т.е. TAB. А вот ваш комп почему-то заменяет символ TAB (9), на пробел (символ 32)
То, что у пользователя есть TAB в ячейке вы можете сами убедится встав в ячейку с текстом и нажать F2 - текст в ячейке разделится по TAB

P.S. Пусть клиент вставляет скопированный текст не заходя внутрь ячейки - получится 2 столбца - в 1м будет номер трека, а во 2м столбце будет его название
P.P.S. У меня Office 365 и вставляется так же, как и у вашего пользователя - когда вставляешь текст - TAB не виден в ячейке, но если нажать F2 - весь текст форматируется через TAB и 3-й символ в ячейке код символа 9 (TAB). А вот в вашем "Хорошем" файле - 3-й символ пробел (32-й код). Откуда он у вас берётся пробел, если в текстовом файле 3-й символ это TAB (код 9) ?

Изменено: New - 15.10.2023 15:50:36
Проблемы с копированием листа., При копировании листа выдаёт сообщение "Имя.... уже существует".
 
Ваши коллеги тащат какую-то информацию из базы MySQL и потом отправляют файл вам. В этом файле скорее всего есть скрытое имя "LOCAL_MYSQL_DATE_FORMAT" (вы его глазами не видите). Когда вы копируете лист, то вместе с этим листом вы копируете и имя, вот Excel и ругается, что вы пытаетесь задвоить имя.
попробуйте перед копированием листа запустить этот макрос
Код
Sub DeleteName()
    Dim nName As Name
    On Error Resume Next
    For Each nName In ActiveWorkbook.Names
        If nName.Name = "LOCAL_MYSQL_DATE_FORMAT" Then nName.Delete
    Next nName
    For Each nName In ActiveSheet.Names
        If nName.Name = "LOCAL_MYSQL_DATE_FORMAT" Then nName.Delete
    Next nName
    On Error GoTo 0
End Sub
Изменено: New - 12.10.2023 20:13:59
Error in loading Dll
 
В первом сообщении уже, вроде, как переустанавливали офис...
Вычисления в книге: автоматически, Application.Calculation = xlAutomatic
 
Можно сразу предложить включить автоматический
Код
Private Sub Workbook_Open()
    Dim UserResponse As VbMsgBoxResult
    If Application.Calculation = xlCalculationManual Then
        If MsgBox("В книге установлен ручной пересчёт формул!" & vbLf & "Включить автоматический пересчёт?", vbQuestion + vbYesNo, "Внимание") = vbYes Then
            Application.Calculation = xlCalculationAutomatic
        End If
    End If
End Sub

Изменено: New - 04.10.2023 21:56:14
Вычисления в книге: автоматически, Application.Calculation = xlAutomatic
 
В модуль ЭтаКнига вставить код
Код
Private Sub Workbook_Open()
    If Application.Calculation = xlCalculationManual Then
        MsgBox "В книге установлен ручной пересчёт формул!" & vbLf & "Если нужен автоматический, то меню Формулы - Параметры вычислений", vbExclamation, "Внимание"
    End If
End Sub
Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 162 След.
Наверх