Я пишу кусок кода, чтобы упорядочить книги в плитках. Но я хочу сделать это для нескольких избранных открытых книг.
Способ, которым я go об этом говорю, заключается в том, что я oop просматриваю все открытые книги, а те, которые не удовлетворяют условию, сводятся к минимуму.
Excel не имеет проблем с этим, когда я делаю это вручную, зайдя в Вид -> Упорядочить -> Плитка .
Он упорядочивает только не минимизированные книги.
Однако, когда я хочу VBA чтобы сделать то же самое, он организует их только тогда, когда нет свернутых рабочих книг. Вот что я попробовал.
Dim wb As Workbook
For Each wb in Workbooks
If (condition) Then
wb.Windows(1).WindowState = xlMinimized
End If
Next wb
Windows.Arrange xlArrangeStyleTiled
Опять же, Arrange работает, если количество свернутых книг равно нулю.
Кроме того, проблема, похоже, связана только с мозаичным стилем расположения. Для вертикальной, горизонтальной или каскадной программы программа не возражает против минимизации рабочих книг и работает так, как ожидается.
Однако я хочу, чтобы рабочие книги были упорядочены в виде плиток.
Редактировать:
Вот пример, иллюстрирующий назначение этой программы.
Допустим, у меня есть 5 открытых рабочих книг. В настоящее время я работаю с книгами 1, 2 и 3 и хочу видеть их одновременно на экране. Рабочие тетради 4 и 5 на данный момент не имеют отношения к мне, поэтому я не хочу, чтобы они занимали место на экране, когда я размещаю свои рабочие тетради. Поэтому рабочие книги 4 и 5 будут сведены к минимуму, так что мой экран будет разделен между рабочими книгами 1, 2 и 3, когда я их составлю.