Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 След.
Как правильно выполнять относительные ссылки на файл в VBA
 
Да, то что надо! Большое спасибо!!
Как правильно выполнять относительные ссылки на файл в VBA
 
Предположим, есть папка "folder", в ней расположен файл "файл.xls", с которым и работаем. Например используем функцию LoadPicture , парметр [filename] задаёт, как я понял, имя загружаемого файла, может включать имя папки.
Папка "Pict" с картинками лежит в папке "folder"  
 
Как сослаться на файл folder\Pict\1.gif ???  
Т.е. как сделать так, чтобы не писать полный путь к картинке, а указать его относительно папки "folder" ???
TextBox, как задать ему определённый формат на ввод данных????
 
Прогуглил вопрос, вариант решения:  
 
Ввод в TextBox только цифр  
 
Private Sub Text1_KeyPress(KeyAscii As Integer)    
If KeyAscii < Asc(0) Or KeyAscii > Asc(9) Then  
KeyAscii = 0  
Beep     ' звуковой сигнал при ошибке  
End If    
End Sub
TextBox, как задать ему определённый формат на ввод данных????
 
Я бс радостью воспользовался методой, которую подсказал Юрий  
' Разрешенные символы  
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)  
If KeyAscii > 47 And KeyAscii < 58 Or KeyAscii = 44 Or KeyAscii = 45 Or KeyAscii = 8 Then Else KeyAscii = 0  
End Sub  
 
Но я не владею информацией, с какого по какой номер там идут цифры... подскажите пожалуйста
TextBox, как задать ему определённый формат на ввод данных????
 
Ругается если ввести не числовое значение,а смешаное типа 1ффф    
Походе ругается потому, что это значение себе далее присваивает переменная типа Integer :)  
 
Поэтому мне надо , чтобы можно было вводить только цыфры в TextBox.
TextBox, как задать ему определённый формат на ввод данных????
 
слэн, я туда On Error Resume Next? Что то всё равно ругается  
 
Private Sub TextBox4_Exit(ByVal Cancel As MSForms.ReturnBoolean)  
'  
On Error Resume Next  
'  
If Val(TextBox4) > 10 And Val(TextBox4) < 10000 Then  
Else  
TextBox4 = 20 ' default value  
End If  
End Sub  
 
Юрий М, посмотрел. Я бы сделал как там описано, разрешил бы только цифры. НО как узнать каким номером начинаются и заканчиваются цифры??
Можно ли сохранить значение переменной при выходе из EXCEL???
 
Извиняюсь за корявый вопрос, явно лишённый особого смысл. Сейчас поясню, что же на самом деле нужно.  
Есть переменная    
Public TimeInterval As Integer  
Она присваивает себе значение из TextBox4 формы. В инициализации формы стоит TextBox4.value = 20, это значение себе присваивает TimeInterval  
Затем я вручную меняю значение текстбокса на, предположим, 30.  
 
Как терь сделать, чтобы значение 30 сохранилось в инициализации формы? Другими словами, нужно, чтобы при след. запуске Эксель TextBox4 имел значение 30 ??  
 
------  
Это возможно сделать, сохраняя значение TextBox4 в ячейку листа, и извлекая его оттуда при инициалайзе или активации формы, но очень реализовать это не трогая эксель, а как бы это сказа.... на уровне VBA что-ли, простите за делетантские формулировки.
TextBox, как задать ему определённый формат на ввод данных????
 
Переделал в секунды по Вашему совету, всё правильно, запаристо будет ввводить так, как я сначала хотел.  
ТОлько вот другая проблемка, вот это условие If Val(TextBox1) > 10 And Val(TextBox1) < 10000 Then хорошо работает, но если ввести в текстбокс скажем 15ddd  
то бэйсик ругаицца.  
Как можно изменить условие, чтоб он ещё и такой вариант не пропускал и ставил по дефолту в случаях ошибочного ввода?
TextBox, как задать ему определённый формат на ввод данных????
 
Есть форма, в ней TextBox.  
Хочу сделать возможным менять интервал времени автосохранения из формы, посредством ввода необходимого интервала автосохранения в TextBox.  
Автосохраненение основано на методе onTime (пару тем назад я вопрошал по этому поводу)  
 
По замыслу, для нормальной работы необходимо, чтобы в текстбокс можно было ввести данные в формате 0, 0, 10 (если буду использовать onTime Now + TimeSerial(0, 0, 10))  
либо чтобы в текстбок можно ввести данные только в виде "00:00:10" (если буду использовать onTime Now + TimeValue("00:00:10")  
 
Помогите пожалуйста, не знаю, как описать TextBox в инициалайзе формы, чтоб туда можно было ввести данные только в таком формате, что я указал выше?
Как задизаблить все переклюки, кнопки и иные органы управления формы одним махом?
 
Спасибо, вот это точно то, что нужно! Воспользовался вот этим трюком  
 
Public Форма1 As MSForms.UserForm  
 
Private Sub UserForm_Activate()  
Set Форма1 = Me    
End Sub  
 
Всё отлично заработало, благодарю, вы очень помогли на этом нелёгком пути!
Как задизаблить все переклюки, кнопки и иные органы управления формы одним махом?
 
ZVI, отличная идея, сейчас испробую!
Автовыполнение кода через опред. промежутки времени
 
Всё опробовал, работает. Прочитал ещё раз справку по onTime понял почему работает :)  
Ещё раз спасибо!
Автовыполнение кода через опред. промежутки времени
 
Спасибо большущее, сейчас попробую приделать.
Как задизаблить все переклюки, кнопки и иные органы управления формы одним махом?
 
ZVI, дело в том, что я не знаю, какая из 9 форм загружена в тот момент когда нужно отключить органы управления.    
Можно ли как то в общем описать, что если загружена любая форма, то на ней нужно отключить управление?
подскажите, как остановить выполнение процедуры, метода
 
предположим есть    
sub sub_1()  
код...  
end sub  
 
И есть ещё sub_2, в процессе выполнения которой должна останавливаться sub_1  
sub sub_2()  
код...  
ВЫРУБИТЬ sub_1    
снова код...  
end sub  
 
Вот как в этом случае остановить выполнение sub_1
Как задизаблить все переклюки, кнопки и иные органы управления формы одним махом?
 
ZVI, а как быть, если нужно из процедуры, расположеной в ст. модуле сделать отключение всех кнопок на форме? Me.Controls не подходит, а как изменить - не знаю..
Автовыполнение кода через опред. промежутки времени
 
Столкнулся с рядом проблемм, решить не могу, помогите.  
Не получается остановить метод onTime. Включаю вот такми макаром:  
 
Private Sub CommandButton110_Click()  
Call TimerForSave  
End Sub  
 
Sub TimerForSave()  
Application.OnTime Now + TimeSerial(0, 0, 20), "AutoSaveAsCopy"  
End Sub  
 
Sub AutoSaveAsCopy()  
DoEvents  
Excel.Application.ThisWorkbook.SaveCopyAs ("копия_xuDB.xls")  
TimerForSave  
End Sub  
 
ОТключение желательно сделать так:  
Private Sub CommandButton111_Click()  
отключаем onTime  
End Sub
Как задизаблить все переклюки, кнопки и иные органы управления формы одним махом?
 
Есть форма. На ней кнопки, много кнопок. Можно ли одной командой сделать с ними что-то, аналогичное тратата.enabled = false ??? А то описывать каждый элемент нецелесообразно.  
Заранее спасибо, тк чую, что явно такая возможность предусмотрена, а раз предусмотрена, вы о ней точно знаете :)
Автовыполнение кода через опред. промежутки времени
 
Покумекал, вышел из положения так.  
При инициализации запускается TimerForSave  
В стандартном модуле вписал процедуры  
 
Sub TimerForSave()  
Application.OnTime Now + TimeValue("00:15:00"), "SaveAsCopy"  
End Sub  
и  
Sub SaveAsCopy()  
Excel.Application.ThisWorkbook.SaveCopyAs ("рез_копия_xuDB.xls")  
TimerForSave  
End Sub  
 
Работает как надо, но вроде конструкция больно громозка.  
Есть ещё способы?
Автовыполнение кода через опред. промежутки времени
 
Слэн, спасибо, прикрутил, работает. Но не так, как хотелось бы.  
Как сделать так, чтобы application.ontime тратата запускался как бы автоматом.  
Ну вот я сделал процедуру  
Sub SaveAsCopy()  
Excel.Application.ThisWorkbook.SaveCopyAs ("рез_копия_xuDB.xls")  
End Sub  
зпихнул в станд модуль.  
Сделал строку таймера и всунул в:  
sub userform_initialize()  
Application.OnTime Now + TimeValue("00:00:15"), "SaveAsCopy"  
end sub  
 
Есественно, что при инициализации формы запускается отсчёт 15 секунд, SaveAsCopy выполняется. А как сделать, чтоб после 15 сек снова выполнился SaveAsCopy??  
 
Подозреваю, что Application.OnTime Now + TimeValue("00:00:15"), "SaveAsCopy" нужно вставить куда-то в иное место? Или подход совсем неправелен?
Автовыполнение кода через опред. промежутки времени
 
Возникла такая вот необходимость...    
Строка    
Excel.Application.ThisWorkbook.SaveCopyAs ("Резервная_копия_xuDB.xls")  
должна выполняться через заданые промежутки времени.  
В VBA Excel можно это реализовать?
Что означает .Value
 
Value - значение какого-либо элемента.  
Например TextBox1.Value = "Hello" означает, что в текстовое поле textBox1 формы , будет вставлено значение Hello.  
А ещё может использоваться вот таким образом.    
OptionButton1.Value = true  
Это значит что когда код дойдёт до этой строки, то включится переключатель  OptionButton1.  
 
А так если не знаешь, то в перв. очередь глянь в обычный англ-рус словарь. Дальше по смыслу можно понять, куда прикручивается то или иное свойство и зачем.
Помогите со свойством элемента MultiPage
 
Всё, прикрутил, супер! Спасибо!!!
Помогите со свойством элемента MultiPage
 
Есть MultiPage с Page1  и Page2.  
Никак не могу найти, как отловить, какая страница активна. Суть вопроса примерно такая:  
If активна Page1 then  
код1  
else  
код2  
 
Попогите разрешить загвоздку пожалуйста.
Выполнение кода, если курсор в любой ячейке первой строки листа.
 
Нет слов... а я то что тока не накручивал: и так, и сяк... оказалось в 3 раза проще :)  
Большое Вам спасибо, очень помогли!!!
Выполнение кода, если курсор в любой ячейке первой строки листа.
 
Помогите пожалуйста - никак не могу домыслить...  
Есть активный лист. ActiveCell может находится в любой ячейке.  
Как сделать так, чтобы код выполнялся только тогда, когда ActiveCell находится в первой строке листа???  
должно быть что-то типа    
If ActiveCell находится в первой строке then  
код  
endif
Создать счётчик на основе поиска по критериям. Слэн, HELP
 
Ага, попробую. Надо было сначала поискать, но поленился :) Я и так слишком уж много у вас почерпнул, пора и меру знать.
Создать счётчик на основе поиска по критериям. Слэн, HELP
 
См. пример. Очень необходим счётчик. Форма для него готова. Счёт чик должен работать так. Выбираем где искать. Выбираем что искать. Код ищет в указанном месте заданое слово и при совпадении добавляет к значению счётчика +1ю И так до тех пор, пока не просмотрит всю указаную область. После чего в TextBox1 возвращает полученное значение счётчика.  
 Буду безмерно счастлив, если покажете в моём примере, как это лучше сделать.
Отрисовка me.label2 идёт невовремя, HELP!!!!!
 
{quote}{login=слэн}{date=01.11.2008 01:57}{thema=}{post}растете :){/post}{/quote}  
слэн, я так надеялся, что именно в откликнитесь, и не обманулся! Спасибо!!  
Единственный нюанс - файл который вы прикрепили - похоже предназначался кому-то другому :) Похоже чисто машинально выбрали не тот файл, когда делали вложение
Отрисовка me.label2 идёт невовремя, HELP!!!!!
 
См. пример.  
Есть заготовка формы, которая при нажатии на переключатель осущ. поиск. Диапазон поиска довольно обширен, на просмотр всего диапазона уходит около 4-5 сек на моём компе.  
Очень нужно сделать некий индикатор, который бы во время просмотра диапазона сообщал что-нить типа "Погодите, идёт поиск, ничё не трогайте :)"  
Для меня смое удобное - это вставит Label, который меняет своё свойство с visible = false на visible = true непосредственно СРАЗУ после нажатия на переключатель, акивирующий поиск ( я так и сделал, см. пример). Однако он похоже его отрисовывае уже после того, как просмотрел диапазон поиска... :( и никакого толка.  
 
Помогите пожалуйста довести до рабочего состояния то, что есть либо предложите что-то иное. Оооочень буду признателен.
Страницы: 1 2 След.
Loading...