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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.06.2013, 17:39   #1
macujin
Новичок
Джуниор
 
Регистрация: 08.06.2013
Сообщений: 6
По умолчанию Нужен совет

Я написал макрос
Sub öö()

Dim X As Single, Y As Single, K As Single, S As Single, I As Single
Sheets("Ëèñò1").Select
Cells(1, 1) = "X"
Cells(1, 2) = "Z"
I = 2
For X = 1 To 11 Step 1
Z = Log(X ^ (1 / 2) + 1 / X ^ 2)
Cells(I, 1) = X
Cells(I, 2) = Z
I = I + 1
S = S + Z
Next X
End Sub
Получается таблица с X и Z. После чего мы сделали кнопку и график. Мне надо сделать возле первой таблицы сделать еще одну, где даны начальное и конечное значение(В макросе это 1 и 11). Меняя эти значения во второй таблице, первая таблица так же меняется. Например, нач. и конеч. значения 1 и 11, меняем их на 5 и 15 и получаем в первой таблице с X: 5,6,7... 15, а Z уже автоматически рассчитывается. Надеюсь я поставил вопрос корректно. Помогите, пожалуйста, советом.
macujin вне форума Ответить с цитированием
Старый 09.06.2013, 03:07   #2
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Код:
Sub ФУ()
  Dim I As integer
  Cells(1, 1) = "X"
  Cells(1, 2) = "Z"
  For i = 0 To 10
    Cells(I+2, 1) = cells(1,3)+(cells(1,4)-cells(1,3))/10*i
    Cells(I+2, 2) = Log(Cells(I+2, 1) ^ (1 / 2) + 1 / Cells(I+2, 1) ^ 2)
  Next
End Sub
в С1 начальное значение Х, в Д1 - конечное.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 09.06.2013, 10:08   #3
macujin
Новичок
Джуниор
 
Регистрация: 08.06.2013
Сообщений: 6
По умолчанию

Спасибо за помощь, но это строка под ошибкой Cells(I+2, 2) = Log(Cells(I+2, 1) ^ (1 / 2) + 1 / Cells(I+2, 1) ^ 2). Буду искать способ, чтобы исправить. Как найду, отпишусь

Последний раз редактировалось macujin; 09.06.2013 в 10:12.
macujin вне форума Ответить с цитированием
Старый 09.06.2013, 11:41   #4
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Ваша функция определена на интервале Х от 0 до +бесконечность,
ошибка возможна при Х < 0 (квадратный корень с отрицательного числа есть иррациональное число, математическая абстракция)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужен совет! Asori Помощь студентам 0 15.12.2012 02:31
нужен совет Kolya1337 Свободное общение 4 04.04.2011 23:52
Нужен совет, просто совет kardinal94 Общие вопросы Delphi 7 16.12.2010 22:16
Нужен совет Leo705 C++ Builder 7 13.04.2010 16:32
Нужен совет Михаил Юрьевич Общие вопросы Delphi 7 27.01.2008 10:25