Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» Excel VBA

Автор: OchkaritO
Дата сообщения: 31.05.2006 08:35
Парни, такой вот

Код:
Private Sub Calendar1_Click()
Cells(5, 3).Value = Calendar1.Object
End Sub
Автор: Troitsky
Дата сообщения: 31.05.2006 10:56
OchkaritO

Код: ActiveCell.Value = Calendar1.Object
Автор: AlexRomano
Дата сообщения: 01.06.2006 16:19
Кто-нибудь знает как настроить excel чтобы он в гиперссылке открывал формат PDF. У меня открывает все форматы (JPG, TIF, DOC, XLS), кроме PDF. Как быть? ПОМОГИТЕ, пожалуйста!!!! Мне это сильно мешает работать!!!!!
Автор: Yuk
Дата сообщения: 01.06.2006 16:51
AlexRomano
Вопрос скорее для FAQ.
Что значит не открывает? Ничего не происходит или вылезают ошибки? Adobe Acrobat (по крайней мере Reader) установлен? Гиперссылка на локальный файл или в Интернет? PDF на диске открывается? В крайнем случае попробуй переустановить Акробат.
Автор: OchkaritO
Дата сообщения: 02.06.2006 05:39
Еще вопрос: скажите. пожалуйста. почему этот

Код:
Private Sub CommandButton2_Click()
Dim i As Integer
Dim z As Integer
Set Z1 = ThisWorkbook.Worksheets("Work")
Set Z2 = ThisWorkbook.Worksheets("Kalendar")

Z2.Range("F35").Copy
Z1.Cells(5, 4).PasteSpecial Paste:=xlPasteValues

End Sub
Автор: Yuk
Дата сообщения: 02.06.2006 17:11
OchkaritO
A Dimы для Z1, Z2 забыл?

Код: Dim Z1 As Worksheet
Dim Z2 As Worksheet
Автор: biggloomy
Дата сообщения: 02.06.2006 20:16
Товарищи!
Помогите Чайнику. Не могу закрыть книгу. Дает ошибку:Run-time error '1004'

Иописание при debug: Method 'ThisWorkbook' of object'_Global' failed

Пытался закрыть след. образом
------------------------------------------------------
Private Sub cmdCloseAllWorkBooks_Click()
Dim Book As Workbook
'
' Saving and Closing all workbooks.
'
For Each Book In Workbooks
If Book.Name <> ThisWorkbook.Name Then
Book.Close savechanges:=True
End If
Next Book
Автор: Yuk
Дата сообщения: 02.06.2006 20:52
biggloomy
Хм... У меня все сработало без проблем.
Попробуй перед ThisWorkbook поставить Application.
Автор: biggloomy
Дата сообщения: 03.06.2006 00:05
теперь пишет: Method 'ThisWorkbook' of object'_Application' failed

может что-то где-то забыл описать?
Автор: Yuk
Дата сообщения: 03.06.2006 15:39
biggloomy
А где у тебя эта кнопка?
Версия экселя?

Добавлено:
Вот файл с твоим кодом (заменил только true на false, чтобы не сохранять файлы, но и с true не было проблем): http://www.mytempdir.com/713104
Там 2 кнопки - одна прямо в листе, другая в форме. Обе работают.
Excel 2003 (english)
Автор: Forever43
Дата сообщения: 08.06.2006 12:41
надеюсь, что мне тут смогут помочь .. (
Автор: Yuk
Дата сообщения: 08.06.2006 19:21
Forever43
Для начала неплохо было бы знать в чем.
Автор: Forever43
Дата сообщения: 08.06.2006 22:40
Итак .. я обычный студент, время подпирает уже так, что отступать некуда ... Моя задача заключается лишь в том, чтобы зная 2 параметра, посчитать 5 значений ... VBA изучаю первые сутки .. сдавать уже надо ... сижу парюсь .. по частям пробовал, вроде работало .. как начал что-то целиком делать, так начались траблы .. я приведу все 5 формул, которые надо вычислить и 2 вводимых параметра. Если кому не влом, помогиТЕ !

Вводятся параметры с, р (0<p<1). Я их даже в переменные записать не могу из формы .. совсем кодить разучился за 2 года ...
И по ним вычисляются следующие выражения:

ql = (3 * p - 2) * (3 * p - 2) / (4 * p * p * c * c)
qh = 9 / (4 * (1 - p) * (1 - p))
tl = (3 * p - 2) / 2 * p * c
th = 4.5 / (1 - p) - (3 * p - 2) / (p * c)
u = (3 * p - 2) / (p * c)

Всего лишь и требуется, на форме сделать 2 поля для ввода параметров с и р, и кнопочку "Посчитать", после нажатия на которую будут выводиться результаты .. на этой ли форме внизу, может в другом окне .. всё равно .. спасите лоботряса .. я исправлюсь, честно ( А я не слишком много прошу ?)
Автор: Yuk
Дата сообщения: 08.06.2006 23:41
Forever43
Well, ok.
Вот тебе файл быстренько сляпал. На нем можешь основываться.
http://www.mytempdir.com/725704

Автор: Forever43
Дата сообщения: 09.06.2006 00:00
Огромное спасибо. Быстро сделано. Щас пойду копаться дальше в этом )) Сразу видно, дело знаешь ...
Автор: Yuk
Дата сообщения: 09.06.2006 00:26
Forever43
Немного косметики:
Текстбоксы результата сейчас нельзя выделить и скопировать. Измени их свойства Enabled и Locked на True.
Автор: theIggs
Дата сообщения: 09.06.2006 04:05
Подскажите, пожалуйста, есть ли возможность программно отформатировать часть ячейки? Задача такая: нужен макрос, чтобы одним нажатием кнопки выделенный текст преобразовался в верхний/нижний индекс (нужны квадратные метры). Смотрел справку VBA, свойство Selection действует сразу на всю ячейку.
Автор: Yuk
Дата сообщения: 09.06.2006 04:34
theIggs
Мощная вещь (иногда ) - Record New Macro:

Код: With ActiveCell.Characters(Start:=9, Length:=6).Font
.Name = "Arial"
.FontStyle = "Bold"
.Size = 10
.Strikethrough = False
.Superscript = True
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = xlAutomatic
End With
Автор: theIggs
Дата сообщения: 09.06.2006 14:37
Yuk
Согласен на 100%!
Единственная проблема: числа Start = 9 и Length = 6 здесь жёстко вбиты. Как бы мне теперь сделать, чтобы я мог с одинаковым успехом выделить мышкой двойку у м2 и в случае 10 м2, и в случае 1000000 м2?
Superscript = True для последней цифры не предлагать. Интересует именно возможность работы с выделенным куском текста.
Автор: Troitsky
Дата сообщения: 09.06.2006 16:30
DimidROLL
Может быть с опозданием пишу и диплом переделывать тебе будет уже некогда, но все же.
Покопался в твоем документе и столкнулся с таким явлением: ввиду случайного характера возникновения задержек в пути, суда могут друг друга догонять и перегонять. И случается, что в одно и то же время на одном участке находится несколько судов. Условия же на этом участке (наличие шторма, очереди и пр.) для каждого судна могут в корне отличаться, что крайне не корректно.
Выход из этой ситуации, думаю, будет возможен если в цикле не перебирать номера судов и участки (блоки), а изменять время (лучше с достаточно малым шагом). Для каждого отрезка времени задавать путевые условия на каждом участке и, соотносясь с ними, двигать суда.

Добавлено:
И еще. Странно, что на участке в р-не Нижнего Новгорода не учитывается график разводки наплавного моста.
Автор: Yuk
Дата сообщения: 09.06.2006 18:27
theIggs
Это проблема, согласен. В Экселе нет кнопок для этого, а макросы все отключаются при редактировании ячейки. Вот несколько решений, которые удалось найти (по-английски):
http://exceltips.vitalnews.com/Pages/T0080_Creating_Superscript_and_Subscript_Buttons.html
http://j-walk.com/ss/excel/files/supersub.htm
Основаны на использовании UserForm, заменяющей редактирование ячейки. Вариант далеко не идеальный.
Автор: theIggs
Дата сообщения: 09.06.2006 19:02
Да уж, какой тут идеальный вариант, если минимальный элемент, с которым можно работать в Excel - ячейка... Спасибо и за эти ссылки, сейчас почерпну оттуда чего-нибудь и сделаю для себя хотя бы некий промежуточный вариант!
Автор: Forever43
Дата сообщения: 11.06.2006 16:07
Yuk, если ещё помнишь моё прошлое сообщение, то у меня возник ещё вопрос ... теперь мне надо записывать результаты по соответствующим ячейкам, чтобы это всё отображалось на листе Exel ... и при этом, пользователь может вводить значения параметров несколько раз, получая для каждой пары свой набор значений, который будет записываться строчкой ниже .. помоги плиз, либо объясни, как вообще в ячейку с определённыйм менем записать значение какого-либо текстбокса. Заранее спасибо.

Добавлено:
и ещё вопрос на засыпку .. где указывется количество значов после запятой при выводе дробного результата, чтобы текстбокс отображал значение не 5.1020408163265E-03, а к примеру 5.1, или 5.102 ...
Автор: Yuk
Дата сообщения: 12.06.2006 17:39
Forever43

Код: Sheets("Sheet1").Cells(1,1).Value=textbox1.Value
Автор: Varroa
Дата сообщения: 12.06.2006 20:11
Как передать координаты точки по щелчку мыши из Adobe Photoshop например в Excel.
Автор: Forever43
Дата сообщения: 12.06.2006 23:51
Такс, ясненько ... спасибо, только до меня так и не допёрло, как цикл сделать ...

Добавлено:
И подскажи плиз, как исходный лист Exel очищать, чтобы при каждом запуске все ячейки пустыми были ?
Автор: Forever43
Дата сообщения: 13.06.2006 15:21
Всё, проблема разрешилась. Теперь приступаю ко второй задаче. О решении проблем буду интересоваться опять же тут.
Автор: Anatolij2005
Дата сообщения: 15.06.2006 11:23
Знатоки подскажите пожалуйста.
Есть значения в столбце C и есть значения в столбце G причем значения в столбце С номер строки например n= 3 а в G q=15 .Вообщем нужно сравнить значения в столбцах и если значение в столбце С равно значению в столбце G то вырезать и вставить значение со столбца G c положения q в положение n.
Код пробовал писать но чего то не получается опыта маловато.если нужно вышлю свой код.
Автор: Yuk
Дата сообщения: 15.06.2006 21:18
Anatolij2005
Мда, тяжело понять, особенно когда на лицо проблемы с пунктуацией.
Пример можно? Типа кусочек листа со столбцами C и G. Если есть код, даже не работающий, тоже не помешает.
Автор: Anatolij2005
Дата сообщения: 16.06.2006 12:08
Спасибо за отклик, я уже со своей проблемой разобрался сам, есть другая проблема мне нужен код который должен присвоить переменной n номер строки в которой находится курсор.
к сожалению пока неполучается.
Помогите а то мозги уже плавятся...

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768

Предыдущая тема: Стоит ли переходить с Билдера на Делфи?


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.