Страница 2 из 7

Re: Для МЕГА-програмистов, плевое дело!!!

Добавлено: 29 июл 2008, 23:17
Serge_Bliznykov
MOTOCoder, я выкладываю файлик Dark'а.
не забудьте разрешить макросы...
сам я лично вряд ли помочь смогу, сорри... :-(
1) знаний и опыта маловато.
2) меня всегда пугают просьбы вида "дайте воды напится, а то так есть хочется, что аж переночевать негде" - ну одна проблема-вопрос, ну две, ну три...
ну тут же уже практически ТЗ на разработку... :-)

Re: Для МЕГА-програмистов, плевое дело!!!

Добавлено: 30 июл 2008, 15:59
Dark
Уважаемый Serge_Bliznykov и уважаемые програмисты, я не прошу сделать все от и до, кто что может помочь помогите!! :confused: Всю программу я почти написал, хоть тоже и опыта 0, остались только эти пункты если хоть кто-то может помочь хотя бы с чем-то, то БОЛЬШОЕ СПАСИБО!! :D Я просто выложил то, что осталось! Если бы знал, то с радостью все бы сделал сам, но к сожалению я не знаю как сделать, :( поэтому прошу помощи, кто чем может и кто что знает. Как говориться с миру по нитке......Заранее благодарю!!!

Re: Для МЕГА-програмистов, плевое дело!!!

Добавлено: 01 авг 2008, 12:37
Бублик
Для сохранения с нужным именем используй with
With Dialogs(wdDialogFileSaveAs)
.Name = TextBox24.Value
.Show
End With

Re: Для МЕГА-програмистов, плевое дело!!!

Добавлено: 01 авг 2008, 19:31
Dark
Уважаемый Бублик,огромное спасибо!! Уже -1 проблемма!! :D :D

Re: Для МЕГА-програмистов, плевое дело!!!

Добавлено: 04 авг 2008, 11:47
Бублик
Уважаемый Дарк решил еще посомтреть ваш код и немнго не разобрался что должно быть значение от 1 до 373 или усеченная дата? по поводу 1го варианта то в инициализацию стоит добавить
Dim S(373) As Integer
For i = 1 To 373
S(i) = i
Next i
ComboBox3.List = S

Re: Для МЕГА-програмистов, плевое дело!!!

Добавлено: 04 авг 2008, 12:40
VictorM
Тоже вот решил заглянуть, что за вопрос.
ну если сразу , на вскидку, то по поводу упрощения кода:
Очистка

Код: Выделить всё

Private Sub CommandButton31_Click()
For tb = 45 To 52
        Me.Controls("TextBox" & tb).Text = ""
Next tb
ComboBox14.ListIndex = -1
End Sub
Копирование

Код: Выделить всё

Private Sub CommandButton23_Click()
tb2 = 37
For tb = 45 To 52
    Me.Controls("TextBox" & tb).Text = Me.Controls("TextBox" & tb2).Text
tb2 = tb2 + 1
Next tb
ComboBox14.Text = ComboBox13.Text
End Sub
дальше пока не вникал, чуть позжа... ;)

Re: Для МЕГА-програмистов, плевое дело!!!

Добавлено: 04 авг 2008, 13:51
VictorM
В ячейке TextBox4 при нажатии кнопки CommandButton3 должна высвечиваться дата в формате dd.mm.yyy. Не знаю как это прописать. Она высвечивается, но не та, которую я выбираю и не в формате dd.mm.yyyy
Ячейка TextBox3 должна быть зависема от ячейки TextBox4 и иметь формат mmyy, т.е. например при выборе 01.07.2006 в ячейки TextBox4, в ячейки TextBox3 автоматически должно высвечиваться 0706.
Значит так.
В модуле Module1 вверху, т.е. в самом начале пишем

Код: Выделить всё

Public iDat As Date
Код календаря пишем так

Код: Выделить всё

Private Sub Calendar1_DblClick()
iDat = Calendar1.Value
Me.Hide
End Sub
в модуле формы соответствующие процедуры запишем так:

Код: Выделить всё

Private Sub CheckBox1_Click()
TextBox4.Value = Format(Date, "dd.mm.yyyy")
TextBox3.Value = Format(Date, "mmyy")
End Sub
Private Sub CommandButton3_Click()
UserForm2.Show
TextBox4.Value = Format(iDat, "dd.mm.yyyy")
TextBox3.Value = Format(iDat, "mmyy")
End Sub
Private Sub CommandButton18_Click()
UserForm2.Show
TextBox40.Value = Format(iDat, "dd.mm.yyyy")
End Sub
Private Sub CommandButton32_Click()
UserForm2.Show
TextBox48.Value = Format(iDat, "dd.mm.yyyy")
End Sub
Private Sub calendar(a As Integer) можно исключить
дальше не смотрел пока

Re: Для МЕГА-програмистов, плевое дело!!!

Добавлено: 04 авг 2008, 21:41
Dark
Уважаемый Бублик, спасибо за подсказку, но есть один маленький нюанс!!! Дело в том, что при вводе данной формулы в инициализацию, значения принимают вид не от 1 до 373, а от 0 до 373. Не сочтите это за придирку, просто при прописании данного кода при инициализации для ComboBox4, я хотел бы чтобы отсчет начинался со 100..... При вводе данного кода, он начинает мне вести отсчет до 100 в виде значений 0, а на 100-м значении уже до значения которое мне нужно, т.е. 0.0.0.0.0.....100......, а мне надо чтобы он начинал со значения 100 и до конкретного, например до 105. Тоже самое и с ComboBox3, я бы хотел чтобы значения были от 1 до 373, хотя это не принципиально. Заранее спасибо!! :) :)

Re: Для МЕГА-програмистов, плевое дело!!!

Добавлено: 04 авг 2008, 22:56
VictorM
значения принимают вид не от 1 до 373, а от 0 до 373.
пропишите инициализацию так

Код: Выделить всё

Dim S(1 To 373) As Integer
For i = 1 To 373
S(i) = i
Next i
и будет с 1 до 373

Re: Для МЕГА-програмистов, плевое дело!!!

Добавлено: 04 авг 2008, 23:51
VictorM
Данные введенные в Формы TextBox11,22,23 должны высвечиваться в TextBox24 желательно в реальном времени, если такой возможности нет, то при нажатии кнопки CommandButton29. Только в формате Фамилия и Инициалы. Например вводим в TextBox11,22,23 Иванов Иван Иванович, в TextBox24 должны получить Иванов И.И. В кнопке CommandButton29 есть прописанный код, но он не совсем верен, я не знаю как сделать правильно.
Напишите так:
В начале модуля UserForm3

Код: Выделить всё

Dim iИмя As String
Dim iОтч As String
Дальше, в коде формы:

Код: Выделить всё

Private Sub TextBox22_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
Имя = TextBox22.Value
iStr = Len(Имя)
iИмя = Left(Имя, Len(Имя) - (iStr - 1))
End Sub

Private Sub TextBox23_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
Отч = TextBox23.Value
iStr = Len(Отч)
iОтч = Left(Отч, Len(Отч) - (iStr - 1))
TextBox24.Value = TextBox11.Value & " " & iИмя & "." & iОтч & "."
End Sub
нужное значение попадает в TextBox24 после ввода Отчества, в нужном формате.

Кнопку 29 можно удалить

Буду смотреть дальше, если конечно, оно Вам надо