Так как есть множество разных строк, которые можно скрыть и показать, я сделал первый пример, который вы можете использовать, чтобы сделать все остальное:
Dim wb As Workbook, ws As Worksheet, SheetNames
Application.DisplayAlerts = False 'Prevents general pop-ups
Application.Calculation = xlManual 'Formulas are not calculated
Application.ScreenUpdating = False 'What the user see's on screen will not change
If Intersect(Target, Range("D10")) Is Nothing Then Exit Sub
Set wb = ThisWorkbook
SheetNames = Array("Weekly Report - New", "Cumulative Report - New")
StrValue = Target.Value
Select Case StrValue
'Hides all major city information so just the titles are shown.
Case vbNullString
For i = 0 To 1
Set ws = wb.Sheets(SheetNames(i))
With ws
.Unprotect
Union(.Rows("54:63"), .Rows("68:77"), .Rows("82:91"), .Rows("96:105"), .Rows("23:47")). _
EntireRow.Hidden = True
.Rows("18:31").EntireRow.Hidden = False
End With
Next i
'All the other cases
End Select
То, что я сделал, было цикл для каждого нужного вам листа работать (при условии, что оба имеют одинаковые данные) и использовать то, что urdearboy сказал о объединении для большей читабельности и ускорения процесса.
Надеюсь, это направит вас в правильном направлении. Если вам нужна помощь, просто спросите.
На Mac OS X, <machine/_types.h>
определяет wchar_t
как int
, таким образом, это - четыре байта (32 бита) на всей поддерживаемой в настоящее время архитектуре.
Как Вы отмечаете, printf
(3) страница справочника определяет %S
как эквивалентный %ls
, который берет указатель на некоторых wchar_t
символы (wchar_t *
).
Документация Какао, которую Вы связали с (и ее эквивалент CF), однако, действительно определяет %S
отдельно:
%S
: Завершенный пустым указателем массив 16-разрядных символов Unicode
Акцент добавляется. Кроме того, то же идет для %C
.
Так, это не ошибка. CF и Какао интерпретируют %S
и %C
по-другому по сравнению с как printf
и его кузены интерпретируют их. CF и Какао рассматривают символ (символы) как UTF-16, тогда как printf
(по-видимому), рассматривает их как UTF-32.
Интерпретация CF/Cocoa более полезна при работе с Core Services, поскольку некоторые API (такие как Файловый менеджер) вручат Вам текст как массив UniChar
s, не CFString; пока Вы пустой оконечный, которые выстраивают, можно использовать его с %S
распечатать строку.