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

Страницы: 1 2 След.
Динамический именованный диапазон по условию
 
Цитата
МатросНаЗебре написал:
Код ? 1=ИНДЕКС(Таб_ФП[ФИО проверяющего];НАИБОЛЬШИЙ((ЕСЛИОШИБКА(МЕСЯЦ(Таб_ФП[Дата проверки]);0)=2)*(СТРОКА(Таб_ФП[Дата проверки])-1);СТРОКА()-СТРОКА($54:$54)))В A55 формула массива.Код ? 1=ИНДЕКС(Таб_ФП[Принятые меры];НАИБОЛЬШИЙ((ЕСЛИОШИБКА(МЕСЯЦ(Таб_ФП[Дата проверки]);0)=2)*(СТРОКА(Таб_ФП[Дата проверки])-1);СТРОКА()-СТРОКА($54:$54)))В ВA55 формула массива.
Не совсем так как нужно работает, изменил на:
Код
=ИНДЕКС(Таб_ФП[ФИО наказанного];НАИБОЛЬШИЙ((ЕСЛИОШИБКА(МЕСЯЦ(Таб_ФП[Дата проверки]);0)=МЕСЯЦ(AQ5&0))*(СТРОКА(Таб_ФП[Дата проверки])-1);СТРОКА()-СТРОКА($54:$54)))

только нужно еще допилить, чтобы пропускало пустые ячейки и если содержит "-". т.е. отображало только фамилии.

Изменено: Виктор - 31.12.2019 08:11:30
Динамический именованный диапазон по условию
 
Если с примером, то наверно это будет совсем другая тема. Выложу сюда и изменю постановку попроса, если что не так, надеюсь модераторы перенесут куда надо или изменят имя темы.

нужно таблицу в пункте 4.1 заполнить из таблицы "Таб_ФП" колонки "фио наказанного", "Принятые меры" в зависимости от выбранного месяца и года в строке 5
Изменено: Виктор - 02.01.2020 23:11:08
Динамический именованный диапазон по условию
 
Добрый день.
Суть вопроса: есть таблица с данными условно за год. Подскажите можно ли сделать именованный диапазон на определенный месяц при условии, что месяц (и год) будет задаваться отдельно в ячейке (выпадающем списке).

т.е. условно:
А1 - выпадающий список месяцев (май), В1 - год(2019).
в именованный диапазон попадают все данные за период с 01.05.2019 по 31.05.2019

ps// между датами могут быть пустые строки
Параметризация даты в строке SQL запроса к внешнему источнику.
 
Вопрос снят. Решил с помощью PQ
Изменено: Виктор - 28.11.2019 14:27:28
Параметризация даты в строке SQL запроса к внешнему источнику.
 
Наверно ДА
Параметризация даты в строке SQL запроса к внешнему источнику.
 
Добрый день. Есть ссылка, по которой вставляются данные в таблицу:
Нужно обновить эти данные, но с другими параметрами (изменить диапазон даты, дата в ячейках условно А1, В1). Подскажите как реализовать, а то приходится лезть менять источник
Изменено: Виктор - 28.11.2019 14:26:21
Расчета и проверка CRC кода, циклический избыточный код (CRC)
 
Doober, спасибо, что отозвались, конечно Ваш вариант имеет место на жизнь, но не всегда есть интернет для доступа к сайту. Я только, что запустил свой вариант.
Расчета и проверка CRC кода, циклический избыточный код (CRC)
 
Подкрутил так. Все равно не пляшет результат. Подолкните хотябы в нужном напрвлении.
Код
Function CRC_16_RTU(OutputString, h12, h13 As String) As String  ' функция подсчета контрольной суммы сообщения RTU
    Dim Polenom, crc As Long
    Dim i As Integer, j As Integer, Length As Integer
    Dim Bit As Boolean
    Dim Temp As Byte

    Length = Len(OutputString)
    crc = 65535
    Polenom = 8005 ''&H1F45 ''40961
    
    For i = 1 To Length
        Temp = "&H" & Mid(OutputString, i, 1)
        '  Temp = Asc(Mid(OutputString, i, 1))
        crc = crc Xor Temp
        For j = 1 To 8
            Bit = crc And 1
            crc = crc \ 2
            If Bit = True Then crc = crc Xor Polenom
        Next j
    Next i
    
    '     CRC_16 = Chr(CRC Mod 256) & Chr(CRC \ 256)
    CRC_16_RTU = Hex(crc Mod 256) & Hex(crc \ 256)
    If Len(Hex(crc Mod 256)) = 1 Then h12 = 0 & Hex(crc Mod 256) Else h12 = Hex(crc Mod 256)
    If Len(Hex(crc \ 256)) = 1 Then h13 = 0 & Hex(crc \ 256) Else h13 = Hex(crc \ 256)
End Function
Расчета и проверка CRC кода, циклический избыточный код (CRC)
 
Есть функция которая вычисляет CRC-16 но результат не совпадает. Для данного значения "0d84580000000001010800" в hex должно получится AEB1. Проверял на сайте калькулятор crc, совпадает. Помогите подправить.
Код
Function CRC_16_RTU(OutputString As String) As String

Dim Generator, CRC As Long
Dim I As Integer, J As Integer, Length As Integer
Dim Bit As Boolean
Dim Temp As Byte
Length = Len(OutputString)
CRC = 65535
Generator = 8005 '40961

For I = 1 To Length
  Temp = Asc(Mid(OutputString, I, 1))
         CRC = CRC Xor Temp
         For J = 1 To 8
           Bit = CRC And 1
           CRC = CRC \ 2
           If Bit = True Then
              CRC = CRC Xor Generator
           End If
       Next J
     Next I
'     CRC_16 = Chr(CRC Mod 256) & Chr(CRC \ 256)
     CRC_16_RTU = Hex(CRC Mod 256) & Hex(CRC \ 256)
 End Function
Расчета и проверка CRC кода, циклический избыточный код (CRC)
 
Добрый день. Нужны макросы а точнее 2-е функции, одна для расчета а вторая для проверки CRC кода. Описание во вложении.
Скрытый текст
Работа с виртуальным СОМ-портом из VBA
 
Все работает. Спасибо.
Работа с виртуальным СОМ-портом из VBA
 
Добрый день. Нужна помощь. Необходимо "опросить" (получить данные) оборудование,  отправив  (команду "0d 84 58 00 00 00 00 01 01 02 00 b7 0e") в COM порт в hex формате. Когда отправляю ниже приведенным кодом, данные уходят как String, соответственно оборудование не отвечает. пробовал разные варианты, но не получилось. Помогите допилить.
Скрытый текст
Изменено: Виктор Степанович Семенчук - 04.11.2016 11:02:40
Импорт данных из файла 210 (формат txt)
 
Спасибо.
Импорт данных из файла 210 (формат txt)
 
Цитата
lexey_fan пишет: попробуйте, в 2 нажатия, 1-запуск макроса,2=выбор файла
Спасибо ОГРОМНОЕ. Все работает.
Импорт данных из файла 210 (формат txt)
 
Доброго времени суток. Есть файл 01300665.210 (имя меняется). Помогите написать макрос, что бы импортировать такие  файлы в эксель одним нажатием кнопки.
Изменено: Виктор Степанович Семенчук - 08.04.2014 23:07:10
Консультация по шаблонам
 
Добрый вечер. Я к вам за советом. Я в VBA самоучка. Так случилось, что на работе меня озадачили "создать шаблоны для написания процентовок мастерам" (не моя примая специальность я электрик). Я все это дело соорудил (создал шаблоны, свою панельку, формы для из заполнения, и еще кучу макросов для удобства и максимальной автомаизации процесса). В итоге у меня идин файл размером метра 4. В файле 10 лиистов + добавленые процентовки (1 лист на процентовку). При этом размер файла еще увеливается.    
И теперь этот файл надо раздать мастерам для работы.    
 
Теперь собственно вопрос: Как все это дело упростить (уменьшить размер одно файла)? У меня есть такой вариан, на сколько я понимаю постоении программ:  
1.Создать (уже скопировать) шаблоны в отдельные файлы.xlt  
2.Все формы и макросы с паннелькой отдельный файл (главный файл).xls (или xla что лучше?)  
3.Созданная процентовка сохранялась в отдельный файл (сколькопроцентовок столько и файлов).  
 
Я правильно мыслю? или подскажите свой вариант как оптимально организовать?
Помогите с ListBox1
 
Вопрос решён. Сделал проверку ListBox1.ListIndex < 0 . Может кому пригодится...
Помогите с ListBox1
 
Из-за чего может строка в ListBox активироватся после второго счелчка? дальше все последующие норма, с первого раза.
Помогите с ListBox1
 
тему закрываю
Помогите с ListBox1
 
проблемная форма открывается при активации ячейки "Номенкларутный номер"
Помогите с ListBox1
 
ссылка на архив http://www.fayloobmennik.net/1848244  
120785
Помогите с ListBox1
 
Но я же счелкаю по строке, и вижу сто она выделена. Подскажите что сделать чтобы все заработало?
Помогите с ListBox1
 
В ListBox1 все отабражается отлично, но как только счелкаю по какой либо строке сразу ошибка 381. При этом ListBox1.ListIndex=-1. У меня такое чувство что ListBox1.ListIndex не возвращает значение, но почему???
Помогите с ListBox1
 
Добрый день. Нужна помощь. Есть форма для заполнения таблицы, на форме имеется ListBox1 в котором отображаются материалы (5 столбцов: 1-номенклатурный номер, 2-Наименование, 3-Ед.изм., 4-Количество, 5-Цена). ListBox1.RowSource присваиваю так (в зависимости от значения ComboBox1):  
     If ComboBox1.Text = .Range("AT7") Then  
       UserForm4.ListBox1.RowSource = "oborot_530"  
     End If  
именованный список oborot_530=СМЕЩ('530'!$AW$9;0;0;СЧЁТЕСЛИ('530'!$AW$9:$AW$2000;">0");5)  
Вот код  
 
Private Sub ListBox1_Click()  
Dim str As String  
Dim pp As String  
Dim vo As String  
Dim korschet As String  
Dim kauk As String  
Dim kvz As String  
Dim dkvz As String  
Dim nomenklat As String  
Dim naimenov As String  
Dim izm As String  
Dim kolvo As String  
Dim cena As String  
Dim vidrab As String  
Dim AL26 As String     ' Вид опрерации  
Dim AM26 As String     ' Кор. счет  
Dim AN26 As String     ' КАУК  
Dim AO26 As String     ' КВЗ  
Dim AR26 As String     ' Доп.КВЗ  
Dim str1 As String  
Dim str2 As String  
   
   TM = 200    'задержка в мс  
   ss = GetTickCount: DoEvents  
   Do While GetTickCount - ss < TM: DoEvents: Loop  
'    ActiveCell = UserForm4.ListBox1.Text  
' на следующей строке останавливается с ошибкой 381      
   TextBox2.Text = ListBox1.List(ListBox1.ListIndex, 0)    ' Инвентарный номер  
   TextBox3.Text = ListBox1.List(ListBox1.ListIndex, 1)    ' Наименование  
   TextBox4.Text = ListBox1.List(ListBox1.ListIndex, 2)    ' Ед. изм  
   TextBox6.Text = ListBox1.List(ListBox1.ListIndex, 4)    ' Цена  
 
   str = ActiveCell.Row  
'-------------------определение КАУК, КВЗ, Кор.счет  
  With ActiveWorkbook.ActiveSheet  
   vidrab = .Range("A4")  
   pp = str - 1  
   pp = .Cells(pp, 1).Value + 1  
  End With  
 
With ActiveWorkbook.Sheets("Дано")  
        str1 = 6   'Номер строки с которой начинать поиск  
        str2 = str1  
    Do Until .Cells(str1, 1).Value = vidrab          'Поиск первой ячейки в 1м столбце соответствующую выбранному авто  
       str1 = str1 + 1                                'перебор номера строк пока не выполнится условие  
         
       If str1 > str2 + 16 Then  
       Exit Sub  
       End If  
    Loop  
   AL26 = .Cells(str1, 9).Value    ' Вид опрерации  
   AM26 = .Cells(str1, 12).Value   ' Кор. счет  
   AN26 = .Cells(str1, 16).Value   ' КАУК  
   AO26 = .Cells(str1, 20).Value   ' КВЗ  
   AR26 = .Cells(str1, 23).Value   ' Доп.КВЗ  
     
End With  
       vo = AL26  
       korschet = AM26  
       kauk = AN26  
       kvz = AO26  
       dkvz = AR26  
       nomenklat = TextBox2.Text  
       naimenov = TextBox3.Text  
       izm = TextBox4.Text  
       kolvo = TextBox5.Text  
       cena = TextBox6.Text  
     
   If nomenklat > 111111111 Then  
     vo = 61  
     kvz = 11  
   End If  
 
     
  With ActiveWorkbook.ActiveSheet  
       Range("A" + str).Value = pp  
       Range("D" + str).Value = vo  
       Range("G" + str).Value = korschet  
       Range("K" + str).Value = kauk  
       Range("N" + str).Value = kvz  
       Range("Q" + str).Value = dkvz  
       Range("T" + str).Value = nomenklat  
       Range("AB" + str).Value = naimenov  
       Range("AR" + str).Value = izm  
       Range("BE" + str).Value = cena  
   End With  
 
TextBox5.Text = ""  
   CommandButton4.Enabled = False  
End Sub  
 
Все работало отлично, но на утро перестало. Может что накосячил полусонный но немогу найти где. Подскажите плиз?..
Автофильтр через VBA - даты
 
Добрый вечер. Есть таблица, в одном из столбцов вводится дата в формате "12.янв" и так целый месяц и каждый месяц. Подскажите как можно используя автофильтр отфильтровать значения по месяцу, т.е. по какому месяцу фильтровать данные брались из ячейки L5.
Сумировать содержимое ячеек при условии
 
Добрый день. Есть таблица (оборотка), в столбце В имеются номенклатурный номер материала. Необходимо выполнить поиск одинаковых номенклатурных номеров и если таковые имеются то сложить ячейки в столбце М (количество), после чего удалить последующие строки с таким номенклатурным номером. Т.е. если например имеется 5 ячеек с одинаковым значением в столбике В (номенклатурный номенр)и значением в столбце М (количество) 2,5,4,1,3, то после выполнения макроса должно получится одна строка с номенклатурным номером в ячейке В и в ячейке М значение 15 (сумма значений счеек в столбце М) а остальные 4 строки удалены.
txt перегнать в xls
 
{quote}{login=Hugo}{date=13.10.2011 01:43}{thema=}{post}Х{/post}{/quote}  
 
Спасибо, все работает правильно. Hugo ты молодец.
txt перегнать в xls
 
Добрый вечер. Есть документ txt в котором таблица с фиксированной шириной. Необходимо его сохранить в xls, ручками все получается без проблем а вот с помощью макроса не получается. Выкладываю примеры. Подскажите как это сделать автоматически.
Блокировать "файл-сохранить"
 
Спасибо,все работает. Тема закрыта.
Блокировать "файл-сохранить"
 
Спасибо все работает. Но вызникает новый вопрос как это:  
{quote}{login=}{date=12.10.2011 01:31}{thema=}{post}в модуль книги:  
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)  
   If Not progsaving Then Cancel = True  
End Sub  
 
в стандартный модуль:  
 
Public progsaving As Boolean  
 
Sub макрос_сохранения()  
   progsaving = True  
   ...  
   ...saveas  
   progsaving = False  
End Sub{/post}{/quote}  
 
удалить из сохраненного файла, т.е. макрос должен быть только в шаблоне?
Страницы: 1 2 След.
Наверх