Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
VBA Макрос в Excel-e для вывода данных по одному параметру https://www.cyberforum.ru/ vba/ thread813553.html
Всем привет!!! Такая ситуация ,есть база данных в ней у каждого есть номер ,как по этим номерам вытащить всю строчку на другой лист.Номеров задается больше 100 ,а база состоит из 5000. Всем сразу большое спасибо.
Обращение по имени VBA
Написать программу, которая запрашивает имя и выводит приветствие, используя данное имя. Заранее спасибо!
VBA Перестановка чисел местами https://www.cyberforum.ru/ vba/ thread813521.html
Ввести два числа A и B, поменять содержимое этих чисел местами. Вывести значения этих чисел после перестановки. Помогите, пожалуйста.
VBA DLookup? как обратиться к тексту определенной записи таблицы Уважаемые программмеры подскажите пожалуйста, для того чтобы получить текст поля из таблицы использую DLookup, но видимо из-за не совпадения типов variant и string, закладке в файле Word не присваивается значение переменных (ROSP,StPristav,Adress_ROSP) и выскакивает ошибка 5941 "запрашиваемый номер семейства не обнаружен". Помогите пожалуйста исправить ошибку или подскажите другой способ... https://www.cyberforum.ru/ vba/ thread813518.html
VBA Как написать программу для вычисления y=f(x)
Никак не получается решить эти задачи :(((. Помогите мне с ними, пожалуйста :). Написать программу для вычисления y = \frac{{sin}^{2}x+cosx}{{e}^{x}}\cdot \sqrt{1+arcsin\, 3x}-ln(5|x|-{x}^{2}) Заранее большое спасибо! Читаем правила 4.3 Создавайте темы с осмысленными и понятными названиями - это серьезно повышает шансы, что на ваш вопрос ответят. 4.4 На каждый вопрос создавайте по...
VBA Как в Select Case записать двойное неравенство? Здравствуйте! Фрагмент задачки: x=arcsin(y), если 1>y>-1. Подскажите пожалуйста, как при помощи оператора Select Case указать этот диапазон? Если брать Case -1 to 1, то концы диапазона будут включены. Помогите, уже мозг сломал х) https://www.cyberforum.ru/ vba/ thread813446.html
VBA SendKeys в MS Equation-3 https://www.cyberforum.ru/ vba/ thread813427.html
Для Argil https://www.cyberforum.ru/ms-word/thread807786.html#post4250260 я написал макрос, пытающийся заменить фи с одним UNI кодом на другое фи в объектах MS Equation-3 через буфер обмена. Проблема в том что объект Equation не ловит никакие SendKeys, кроме SendKeys "{ESC}". Sub ИсправитьФи_в_Equation3() ' Word: по очереди открывать и закрывать объекты MS Equation 3, меняет фи на...
VBA Переместить листы в одну книгу
Доброго времени суток! подскажите пожалуйста, как реализовать такой момент: Открыто несколько книг, в каждой по одному листу. Как их все переместить (при перемещении последнего листа - книга пропадает) на одну книгу. В какую именно - разницы нет, но если нужен ключ, то можно прицепиться к следующим ключам: - в названии одной из книг присутствует слово mybook. - или же на одном из листов...
VBA ищу аналогичное решение для Excel https://www.cyberforum.ru/ vba/ thread813367.html
Всем привет. Ломаю голову над задачкой для Excel(2002). Подскажите пож-ста! Нужно сделать так, чтобы на листе "счет" при изменении содержимого в ячейке "товар" происходило автоматическое заполнение ячеек "цена" и "остаток" из списка товаров на складе (из листа "склад" ). При этом на складе есть товары с одинаковым названием , но разными ценами. Нужно, чтобы оператор на свое усмотрение...
VBA Вычислить функцию синус с точностью 0,1 по сравнению со стандартной сделать вычисление функции с точностью 0,1 по сравнению со стандартной: https://www.cyberforum.ru/ vba/ thread813298.html
Как определить, содержит последовательность хотя бы два равных соседних числа VBA
Нужно написать в VBA. Заранее благодарю=) Вводится последовательность чисел, 0 - конец последовательности. Определить, содержит последовательность хотя бы два равных соседних числа. Я нашел на паскале она выглядит так: var x0,x1:longint; f1:boolean; begin f1:=false; read(x0);
VBA Как передать новому массиву определенную часть старого массива https://www.cyberforum.ru/ vba/ thread813101.html
У меня есть массив А, размер которого 10 элементов. Хочу новому массиву В присвоить значения массива А от 1-го до 6-го элемента. как это сделать без цикла? Существует такой прием?
0 / 0 / 1
Регистрация: 05.02.2013
Сообщений: 150
22.03.2013, 13:29  [ТС] 0

Как в массив добавить внесение не только по 4 символам, но и по 2,3,5 и 7? - VBA - Ответ 4292206

22.03.2013, 13:29. Показов 2230. Ответов 27
Метки (Все метки)

Ответ

общая база в которой находится инф. находится на листе 2. На листе 1 в столбце "А" находятся коды (критерии) которые нужны и здесь же на листе 1 в столбце 2 находятся исключения. Т.е. есть групповые коды 1500000( в которые входят 1520111 и др.) и для них есть искл 1520211 если на листе 2 есть этот код из искл то он не будет переносится в общ результат. Ниже код который загружает в массив и проверяет
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
ReDim ArBase(1 To Range(BaseStart, BaseStart.End(xlDown)).Cells.Count)
    ReDim Exclude(1 To 1)
    
    '=== сгружаем в массив все ОКДП в базе ===
    For y = BaseStart.Row To BaseStart.End(xlDown).Row
        ArBase(n) = Left$(LTrim$(Sheets("Лист2").Cells(y, BaseStart.Column)), 2)
        n = n + 1
    Next y
    
    '=== по всем фирмам ===
    For x = 1 To CStart.Offset(-1).End(xlToRight).Column Step 2 'кол-во фирм = кол-во столбцов /2
      Sheets("Лист4").Cells(yDest, 1) = "Фирма" & x \ 2 + 1 'шапка
      Sheets("Лист4").Cells(yDest, 2) = Sheets("Лист1").Cells(CStart.Row, x).Offset(-4, 1) 'Firm
      Sheets("Лист4").Cells(yDest, 3) = "почта"
      Sheets("Лист4").Cells(yDest, 4) = Sheets("Лист1").Cells(CStart.Row, x).Offset(-2, 1) 'Mail
      Sheets("Лист4").Cells(yDest + 1, 1) = "Доброго дня, " & Sheets("Лист1").Cells(CStart.Row, x).Offset(-3, 1) & "!" 'Face
      
      '=== запись уникальных входящих ОКДП-групп в массив ===
      ReDim Preserve ArList1(1 To 1)
      n = 0
      For y = CStart.Row To Sheets("Лист1").Cells(Rows.Count, x).End(xlUp).Row 'по всем окдп
        tmp = Trim$(Sheets("Лист1").Cells(y, x))
        tmp = Add_Ziro(tmp, 2) 'дописываем нули, если знаков < 7 (кол-во знаков = 4)
        For nn = 1 To n 'ищем и записываем в массив уникальные окдп
          If ArList1(nn) = tmp Then Exit For
        Next
        If nn = n + 1 Then n = n + 1: ReDim Preserve ArList1(1 To n): ArList1(n) = tmp
      Next y
      
      '=== запись исключений ОКДП в массив
      ReDim Preserve Exclude(1 To 1)
      n = 9 'номер строки, где начинаются исключения
      Do While Len(Sheets("Лист1").Cells(n, x + 1)) <> 0
        If Exclude(UBound(Exclude)) <> vbNullString Then ReDim Preserve Exclude(1 To UBound(Exclude) + 1)
        tmp = Trim(Sheets("Лист1").Cells(n, x + 1))
        tmp = Add_Ziro(tmp, 7) 'дописываем нули, если знаков < 7 (кол-во знаков = 7)
        Exclude(UBound(Exclude)) = tmp
        n = n + 1
      Loop
    
      '=== сравнение массивов ОКДП, в т.ч. исключения ===
      For nn = 1 To UBound(ArList1)
        For n = 1 To UBound(ArBase) 'по всем окдп базы (из массива)
          If ArBase(n) = ArList1(nn) Then 'сравниваем окдп двух массивов (входящие и базу)
            'проверка на исключения
            For nEx = 1 To UBound(Exclude)
              If InStr(Sheets("Лист2").Cells(n, 6), Exclude(nEx)) Then Exit For
            Next nEx
            If nEx = UBound(Exclude) + 1 Then 'если не было исключений
              If Success = False Then 'если не было ни одной записи
                Success = True
                Sheets("Лист4").Cells(yDest + 2, 1) = Ex 'дописываем шапку
                yDest = yDest + 3 'через 3 строки
              End If
              Range(Sheets("Лист2").Cells(n, 1), Sheets("Лист2").Cells(n, 10)).Copy Sheets("Лист4").Range("A" & yDest)
              yDest = yDest + 1 'через 1 строку
            End If
          End If
        Next n
      Next nn


Вернуться к обсуждению:
Как в массив добавить внесение не только по 4 символам, но и по 2,3,5 и 7? VBA
0
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.03.2013, 13:29
Готовые ответы и решения:

Как считать из файла текст по символам в массив php?
Всем привет! У меня есть файл &quot;proba2.txt&quot;, в нем некий набор символов, например такой: &amp;1?1@1...

Значение Chr только символам 0-9 a-z A-Z
Допустим есть такой код: Chr(48 + P Mod 75) P - переменная Как сделать так, чтобы Chr...

Чтение строк, разобрать по спец.символам, добавить в DataGridView
Добрый день! Помогите разобраться. Есть текстовый файл: И надо разобрать и добавить в...

Ссылка на документ на компьтере только по первым символам в названии
Здравствуйте! Я не специалист в программировании, поэтому был бы очень рад вашей помощи по...

27
22.03.2013, 13:29
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru