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

Страницы: 1
Считать дату из ячейки, Чтение даты из ячейки
 
Здравствуйте
Как получить в переменную дату из ячейки, которую я ранее заполнял следующим образом:
Код
Cells(x, 1).Value = Format(Now, "dd/mm/yy;@")
Мне нужно получить дату из ячейки и сравнить ее с введенной, но вариант
Код
Dim b As Date
b = 1 / Month / Year
If CDate(Cells(x, 1).Value) < b Then
не работает. Макрос работает, но результата нет
В чем я ошибаюсь?
Падает Excel при перемещении ячеек с помощью макроса
 
При выполнении макроса на 6 кнопке Excel зависает. Закрывается и открывается снова. Не могу понять причину, найти ошибку в макросе тоже не получается, вроде все должно работать как задумано (хотя бы если ввод корректный). Предполагаю, что ошибка при перемещении ячеек (37 строка)

Текст макроса
Код
Sub ВернутьКнигуНаПолку()
'Application.ScreenUpdating = False
BookShelf.Show
Dim Latest As Long
Dim mybook As String
Dim Ticket As String
Dim maxx As Long
Dim x As Long
Dim y As Long
mybook = BookShelf.ComboBox1.Value
Ticket = BookShelf.ComboBox2.Value
Unload BookShelf
Sheets("Список книг").Select
Range("A:A").Find(mybook).Select
Latest = Sheets("Читальные залы").Cells(1, 10).Value
Cells(ActiveCell.Row, 6 + Latest).Value = Cells(ActiveCell.Row, 6 + Latest).Value - 1
Sheets("История").Select
maxx = Cells(Rows.Count, 3).End(xlUp).Row
For x = 2 To maxx
If Cells(x, 5).Value = Ticket And Cells(x, 3).Value = mybook Then
Cells(x, 9).Value = 0
End If
Next x
Do While Cells(ActiveCell.Row, 3).Value = mybook
Selection.FindNext(After:=ActiveCell).Activate
Loop
Cells(ActiveCell.Row, 9).Value = 0
Sheets("Читальные залы").Select
maxx = Cells(Rows.Count, 2 * Cells(1, 10).Value).End(xlUp).Row
For x = 3 To maxx
If Cells(x, 2 * Cells(1, 10).Value).Value = mybook And Cells(x, 2 * Cells(1, 10).Value + 1).Value = Ticket Then
y = x
End If
Next x
'Range(Cells(y, 2 * Cells(1, 10).Value), Cells(y, 2 * Cells(1, 10).Value + 1)).Select
If y > 3 Then
Range(Cells(y + 1, 2 * Cells(1, 10).Value), Cells(maxx, 2 * Cells(1, 10).Value + 1)).Cut Destination:=Range(Cells(y - 1, 2 * Cells(1, 10).Value), Cells(maxx - 1, 2 * Cells(1, 10).Value + 1))
End If
Cells(1, 10).Clear
Application.ScreenUpdating = True
End Sub
Файл приложен
Изменено: ravlasov - 19.11.2017 16:24:52
Страницы: 1
Наверх