Имя пользователя:
Пароль:
 | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » VBA - [решено] Формирование массива с листа. Исправить код

Закрытая тема
Настройки темы
VBA - [решено] Формирование массива с листа. Исправить код

Аватара для Julian

Новый участник


Сообщения: 4
Благодарности: 0


Конфигурация

Профиль | Отправить PM | Цитировать


Изменения
Автор: Drongo
Дата: 19-11-2012
Описание: tag code
На рабочем листе есть строка С(5,1,1,7,1,21,1). Надо написать функцию создающую квадратную матрицу G(i,j) по правилу:
G(i,j )= |c(i)-5c(j)| если i<=j+1
G(i,j) = c(i-j)+4sin(c(i))-7c(j) если i>j+1

Код функции, приведенной ниже, всем элементам G(i,j) присваивает значение 4. Помогите найти ошибку, пожалуйста.

Код: Выделить весь код
Function g(c As Variant) As Double
 
Dim i As Integer
Dim j As Integer
Dim n As Integer
Dim R() As Double
n = c.Columns.Count
ReDim R(n, n)
 
For i = 1 To n
   For j = 1 To n
       If i <= (j + 1) Then
       R(i, j) = Abs(c(i) - 5 * c(j))
       Else
       R(i, j) = c(i - j) + 4 * Sin(c(i)) - 7 * c(j)
       End If
       
   Next j
Next i
g = R(n, n)
End Function

Отправлено: 10:19, 18-11-2012

 

Аватара для lxa85

Необычный


Contributor


Сообщения: 4466
Благодарности: 995

Профиль | Сайт | Отправить PM | Цитировать


Julian, лист пустой. Прикрепите другой документ, правильный.

-------
- Я не разрешаю тебе быть плохой! Потому что плохие люди совершают плохие поступки. А это нехорошо!
(Из наставлений 5 летней девочки своей младшей сестре)


Отправлено: 11:56, 18-11-2012 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для Julian

Новый участник


Сообщения: 4
Благодарности: 0

Профиль | Отправить PM | Цитировать


lxa85 , спасибо.
Уже не надо, исправил код.

Отправлено: 09:02, 19-11-2012 | #3


Аватара для Drongo

Будем жить, Маэстро...


Сообщения: 6694
Благодарности: 1393

Профиль | Сайт | Отправить PM | Цитировать


Решение для потомков будет озвучено?

-------
Правильная постановка вопроса свидетельствует о некотором знакомстве с делом.
3нание бывает двух видов. Мы сами знаем предмет — или же знаем, где найти о нём сведения.
[Quick Killer 3.0 Final [OSZone.net]] | [Quick Killer 3.0 Final [SafeZone.cc]] | [Парсер логов Gmer] | [Парсер логов AVZ]

http://tools.oszone.net/Drongo/Userbar/SafeZone_cc.gif


Отправлено: 15:49, 19-11-2012 | #4


Аватара для Julian

Новый участник


Сообщения: 4
Благодарности: 0

Профиль | Отправить PM | Цитировать


Если конечно потомки пожелают

Отправлено: 02:48, 20-11-2012 | #5


Аватара для Drongo

Будем жить, Маэстро...


Сообщения: 6694
Благодарности: 1393

Профиль | Сайт | Отправить PM | Цитировать


Вообще-то это правила хорошего тона, нашёл решение - поделись с другими. Согласитесь, неприятно ввест запрос в поисковую систему и найдя аналогичную тему с вопросом, тут же прочитать: спасибо я нашёл сам решение. Не стесняйтесь, здесь все свои.

-------
Правильная постановка вопроса свидетельствует о некотором знакомстве с делом.
3нание бывает двух видов. Мы сами знаем предмет — или же знаем, где найти о нём сведения.
[Quick Killer 3.0 Final [OSZone.net]] | [Quick Killer 3.0 Final [SafeZone.cc]] | [Парсер логов Gmer] | [Парсер логов AVZ]

http://tools.oszone.net/Drongo/Userbar/SafeZone_cc.gif


Отправлено: 14:21, 20-11-2012 | #6


Аватара для Julian

Новый участник


Сообщения: 4
Благодарности: 0

Профиль | Отправить PM | Цитировать


Уважаемый Drongo, правила это не законы. Я не собираюсь с кем-то делится, если меня даже никто не попросил об этом. Тем более что эту тему я создал для того чтобы помогли мне.
По поводу спасибо я нашел сам решение. Не вижу ничего неприятного. Повторюсь тему создал для того чтобы помогли мне. Я отписался что нашел, потому что не мог удалить эту тему, чтобы люди которые хотят помочь не тратили время зря. Да и тот кому надо как говорится найдет решение.
Вообще-то в правила хорошего тона не входит навязывать своё мнение!

Код: Выделить весь код
Sub Procedure_1()
Dim i As Integer
Dim j As Integer
Dim n As Integer
Dim c() As Double
Dim R() As Double
Dim Rv As Excel.Range
Dim Cv As Excel.Range
   Set Rv = Range("C5:I11")
   Set Cv = Range("C1:I1")
   n = Cv.Columns.Count
ReDim R(1 To n, 1 To n)
ReDim c(1 To n)
 
  For i = 1 To n Step 1
     c(i) = Cv.Cells(1, i).Value
     Next i
     
For i = 1 To n Step 1
   For j = 1 To n Step 1
       If i <= (j + 1) Then
       R(i, j) = Abs(c(i) - 5 * c(j))
       ElseIf i > (j + 1) Then
              R(i, j) = c(i - j) + 4 * Sin(c(i)) - 7 * c(j)
       End If
       Next j
Next i

 For i = 1 To n
   For j = 1 To n
      Rv.Cells(i, j).Value = R(i, j)
    Next j
    Next i
    
End Sub

Последний раз редактировалось Drongo, 22-11-2012 в 18:17. Причина: tag code


Отправлено: 14:49, 22-11-2012 | #7


Аватара для Drongo

Будем жить, Маэстро...


Сообщения: 6694
Благодарности: 1393

Профиль | Сайт | Отправить PM | Цитировать


Благодарю.

-------
Правильная постановка вопроса свидетельствует о некотором знакомстве с делом.
3нание бывает двух видов. Мы сами знаем предмет — или же знаем, где найти о нём сведения.
[Quick Killer 3.0 Final [OSZone.net]] | [Quick Killer 3.0 Final [SafeZone.cc]] | [Парсер логов Gmer] | [Парсер логов AVZ]

http://tools.oszone.net/Drongo/Userbar/SafeZone_cc.gif


Отправлено: 18:18, 22-11-2012 | #8



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » VBA - [решено] Формирование массива с листа. Исправить код

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
V. 2010 - Автоматическое формирование alias Lazarius Microsoft Exchange Server 6 27-07-2011 21:35
Формирование POST запроса Legandox Хочу все знать 1 03-05-2011 23:02
C/C++ - Формирование подмножеств на с++ Remisto Программирование и базы данных 3 24-06-2010 22:51
CMD/BAT - [решено] Формирование списка. somes Скриптовые языки администрирования Windows 7 13-04-2009 10:21
Формирование матрицы Sergey Po Программирование и базы данных 3 28-04-2004 04:47




 
Переход