Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.03.2012, 20:23   #1
not_table
Пользователь
 
Регистрация: 14.03.2012
Сообщений: 14
Вопрос Одномерный массив, язык VBA в Excel

Дан массив натуральных чисел а1, а2,..., an. Создать массив из четных чисел этой последовательности

За ранее спасибо, программа вроде простая а вот что то не могу видимо совсем нуб.
not_table вне форума Ответить с цитированием
Старый 15.03.2012, 10:55   #2
DiemonStar
Старожил
 
Регистрация: 08.02.2012
Сообщений: 2,173
По умолчанию

проверено, работает:
Код:
Sub a1()
  Dim A(1 To 4) As Integer, B() As Integer
  A(1) = 1
  A(2) = 2
  A(3) = 3
  A(4) = 4
  J = 0
  For I = 1 To 4
    If A(I) Mod 2 = 0 Then
      J = J + 1
      ReDim Preserve B(1 To J) As Integer
      B(J) = A(I)
    End If
  Next I
End Sub
Правильно поставленная задача - три четверти решения.
DiemonStar вне форума Ответить с цитированием
Старый 15.03.2012, 17:13   #3
not_table
Пользователь
 
Регистрация: 14.03.2012
Сообщений: 14
По умолчанию

Спасибо друг, а код куда писал в Excel не в кнопку да ведь, а просто прям в лист в редактор VB да, а результат куда должен выводится у меня что не куда не выводить
Цифры ведь в ячейки надо писать А1, А2, А3, А4, жму сервис макрос выполнить и ничего не происходит может не туда пишу извиняюсь за нубство
not_table вне форума Ответить с цитированием
Старый 16.03.2012, 00:05   #4
not_table
Пользователь
 
Регистрация: 14.03.2012
Сообщений: 14
По умолчанию

У меня друг как я не стараюсь ничего не выводит, скажи пожалуйста как работает и где должно выводить
not_table вне форума Ответить с цитированием
Старый 16.03.2012, 00:15   #5
Базиля
Участник клуба
 
Аватар для Базиля
 
Регистрация: 03.12.2009
Сообщений: 1,013
По умолчанию

По поводу вывода, это уже зависит от условий по вашей задаче. (либо просто в виде сособщений, может быть на форму или же в ячейки листа)
Базиля вне форума Ответить с цитированием
Старый 16.03.2012, 11:39   #6
not_table
Пользователь
 
Регистрация: 14.03.2012
Сообщений: 14
По умолчанию

Хотелось бы в ячейку листа в любую это тогда как надо,что делать
not_table вне форума Ответить с цитированием
Старый 19.03.2012, 23:16   #7
not_table
Пользователь
 
Регистрация: 14.03.2012
Сообщений: 14
По умолчанию

Ребят ну помогите надо вывести все это в ячейку в любую я так понимаю надо писать после Next I команду Cells() и что тут писать чтоб правильно вывела
not_table вне форума Ответить с цитированием
Старый 20.03.2012, 00:15   #8
DiemonStar
Старожил
 
Регистрация: 08.02.2012
Сообщений: 2,173
По умолчанию

Код:
sub Parity()
I = 1
J = 1
While IsNumeric(Cells(I,1)) and not IsEmpty(Cells(I,1))
  if Cells(I, 1) mod 2 = 0 then
    Cells(J, 2) = Cells(I, 1)
    J = J + 1
  end if
  I = I + 1
Wend
end sub
исходный массив в столбце A
результат - в столбце B
Правильно поставленная задача - три четверти решения.
DiemonStar вне форума Ответить с цитированием
Старый 20.03.2012, 00:21   #9
not_table
Пользователь
 
Регистрация: 14.03.2012
Сообщений: 14
По умолчанию

Да да спасибо а еще можно ну в том коде написать после End if вот это ActiveSheet.[a1].Resize(UBound(B)) = Application.Transpose(B) и тоже все работает
not_table вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Язык: С++ Компилятор: CodeBlocks. Одномерный массив Evgenij Bogdanov Помощь студентам 1 15.12.2011 17:36
Одномерный массив в VBA Keeper! Помощь студентам 11 20.06.2011 23:11
Одномерный массив в VBA Nataly1992 Помощь студентам 18 20.12.2009 20:35
VBA. Одномерный массив ExMatiss Microsoft Office Excel 9 07.05.2008 05:57