Private Sub cmdAdd_Click()
Dim iRow As Long
Dim ws As Worksheet
Set ws = ActiveSheet
'find first empty row in sheet
iRow = .Range("A1").End(xlDown).Row + 1
ответ
Вот что-то, чтобы начать Вас:
Sub SheetPicker()
Dim msg As String
Dim sh As Worksheet
Dim V As Variant
msg = vbCrLf
For Each sh In Sheets
msg = msg & sh.Name & vbCrLf
Next sh
Do
V = Application.InputBox(prompt:="Please pick from:" & msg, Type:=2)
If V = False Then
Exit Sub
End If
If Exists(CStr(V)) Then
Sheets(V).Select
Exit Sub
End If
Loop
End Sub
Function Exists(s As String) As Boolean
Dim sh As Worksheet
Exists = False
For Each sh In Sheets
If sh.Name = s Then
Exists = True
Exit Function
End If
Next sh
End Function
EDIT # 1:
Эта версия позволяет избежать скрытых листов:
Sub SheetPicker()
Dim msg As String
Dim sh As Worksheet
Dim V As Variant
msg = vbCrLf
For Each sh In Sheets
If sh.Visible = xlSheetVisible Then
msg = msg & sh.Name & vbCrLf
End If
Next sh
Do
V = Application.InputBox(prompt:="Please pick from:" & msg, Type:=2)
If V = False Then
Exit Sub
End If
If Exists(CStr(V)) Then
Sheets(V).Select
Exit Sub
End If
Loop
End Sub
Function Exists(s As String) As Boolean
Dim sh As Worksheet
Exists = False
For Each sh In Sheets
If sh.Visible = xlSheetVisible Then
If sh.Name = s Then
Exists = True
Exit Function
End If
End If
Next sh
End Function
Вы забыли добавить 'Sheets (V) .Visible = xlSheetVisible' перед' Sheets (V) .Select' :) Код будет выходить из строя, если лист скрыт :) –
@SiddharthRout Хорошая точка! ..................... перекодировано, чтобы избежать Скрытых листов. –
Но зачем его избегать? Что делать, если пользователь хочет выбрать скрытый лист? –
- 1. Использование директивы AngularJs для обновления входного значения
- 2. Использование именованного диапазона для проверки условных данных
- 3. Использование StructureMap для кэширования именованного экземпляра
- 4. Использование текстового входного значения как float
- 5. Приложение Winjs для активированного события
- 6. Использование эха внутри входного значения HTML
- 7. добавление входного значения для $ объема
- 8. getElementByClassName для изменения входного значения
- 9. Использование Javascript для передачи входного значения как переменной
- 10. Использование переключателей для изменения входного значения с положительного на отрицательное
- 11. Использование javascript для установки значения типа входного текста
- 12. Использование PHP для получения значения типа входного диапазона onchange
- 13. VBA - использование значения входного окна для диапазона данных поиска
- 14. Использование jQuery для установки локальных ключей хранилища от входного значения
- 15. VBA для выбора листа на основе значения ячейки другого листа
- 16. Использование именованного диапазона (столбцы и строки, но без листа), а затем указание, какой лист использовать
- 17. Обнаружение касания активированного UITextField
- 18. Проверить для именованного события
- 19. InjectionFactory для именованного экземпляра
- 20. Возвращаемые значения из листа?
- 21. Выбор входного значения подкласса
- 22. jQuery - замена входного значения
- 23. Установка значения входного значения для значения атрибута в JQuery
- 24. windows.visible = false, предотвращающий использование именованного диапазона
- 25. Проверка входного значения формы
- 26. Значение значения именованного диапазона в Excel
- 27. log4cxx: использование именованного регистратора, отличного от log4j.rootLogger
- 28. Слушайте удаление входного значения
- 29. Проверка входного значения
- 30. Изменение значения входного файла
Это довольно s реали. Что вы пробовали? –