Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Microsoft Office и VBA > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Здесь нужно купить рекламу за 20 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru
Без учёта ботов - 20000 человек в день, 350000 в месяц.

Ответ
 
Опции темы
Старый 22.03.2013, 16:51   #1
bboyRALF
Пользователь
 
Регистрация: 02.08.2012
Сообщений: 14
По умолчанию массив

Здравствуйте!
Подскажите, как в массив добавить внесение не только по 4 символам, но и по 2,3,5 и 7
Код HTML:
Ниже привожу массив
Код Visual Basic

 For y = BaseStart.Row To BaseStart.End(xlDown).Row
     ArBase(n) = Left$(LTrim$(Sheets("Лист2").Cells(y, BaseStart.Column)), 4)
       'ArBase(n) = Left$(LTrim$(Sheets("Лист2").Cells(y, BaseStart.Column)), 3)
        n = n + 1
    Next y
 
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, 4) 'дописываем нули, если знаков < 7 (кол-во знаков = 4)
       ' tmp = Add_Ziro(tmp, 3)
        For nn = 1 To n 'ищем и записываем в массив уникальные коды
          If ArList1(nn) = tmp Then Exit For
        Next
Код Visual Basic

 
Private Function Add_Ziro$(ByVal tmp$, Razr%) 'Razr - сколько должно получится
    If Len(tmp) > 2 Then 'защита от ошибок
          'берем первые 4 символа без пробела (лист1)
          'и дописываем вначало строки нули, если кол-во разрядов < 7
          tmp = String(7 - Len(tmp), "0") & Left$(tmp, Razr - (7 - Len(tmp))) '7 - кол-во разрядов, 4 - кол-во нужных симв.
          Else: tmp = Left$(tmp, 2) 'если разрядов <=2, берем абы что-нибуть
    End If
    Add_Ziro = tmp
End Function
Заранее благодарен!!
bboyRALF вне форума Ответить с цитированием
Старый 22.03.2013, 16:59   #2
DiemonStar
Старожил
 
Регистрация: 08.02.2012
Сообщений: 2,173
По умолчанию

вы бы приложили исходный файл с примером данных - глядишь, проще было бы понять о чем речь)
Правильно поставленная задача - три четверти решения.
DiemonStar вне форума Ответить с цитированием
Старый 22.03.2013, 21:04   #3
Казанский
Старожил
 
Аватар для Казанский
 
Регистрация: 31.12.2010
Сообщений: 2,133
По умолчанию

кросс http://www.cyberforum.ru/vba/thread813588.html
exceleved@yandex.ru Яндекс.Деньги: 410011500007619
Казанский вне форума Ответить с цитированием
Ответ
Опции темы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дан одномерный массив, сформировать новый массив по заданному правилу {Delphi} Nickolai47 Помощь студентам 5 16.12.2012 14:51
С# задан массив 5х5. сформировать массивы А и В. в массив А поместить элементы с четными индексами, в массив В с нечетны Koksa Помощь студентам 0 10.10.2011 11:26
Запись координат в массив в реал тайм, Как записать координаты в массив Dark19 Visual C++ 2 21.06.2011 18:45
Из массив А получить массив В, удвоив все нечётные элементы удвоены ( на Pascal) KARTER Помощь студентам 1 18.06.2011 19:58