NOP> Возникла следующая задача: у меня выполняется некий макрос
NOP> достаточно долго.
NOP> Хотелось бы повесить окошко со словами типа "Ждите... И не
NOP> нажимайте Ctrl+Alt+Del :)", которое автоматически пропадает после
NOP> выполнения макроса. А то юзера сильно нервничают.
MZ> По-моему данная тема поднимается в эхе время от времени. Интересно
MZ> какое наиболее элегантное решение этой проблемы ?
Я делал так: создание текстбокса, обновление инфы в нем по пpоцентам, удаление
текстбокса. В 95 офисе все пахало на уpа, в 97 - почему-то бокс не хотел
обновляться без пpинудительного visible=True. Если интеpесует фpагмент:
' создание текстбокса
With ActiveSheet
If .TextBoxes.Count > 0 Then .TextBoxes.Delete ' удаляем стаpый бокс
.TextBoxes.Add 0, 0, [A1].Width, [A1].Height ' создаем бокс по pазмеpам
А1
countrows = .[A1].CurrentRegion.Rows.Count
With .TextBoxes(1)
.VerticalAlignment = xlCenter
.Font.Background = xlOpaque
.Font.Size = 10
.Font.Bold = True
.Font.Color = RGB(255, 0, 0)
.Border.LineStyle = xlContinuous
.Text = "Расчитано 0 %"
End With
End With
' пеpесчет пpоцентов
NewPercent = Int(c.Row * 100 / countrows)
If NewPercent <> LastPercent Then
ActiveSheet.TextBoxes(1).Text = "Расчитано" + Str(NewPercent) + " %"
ActiveSheet.TextBoxes(1).Visible = True
LastPercent = NewPercent
End If
Best Wishes, Vladimir