Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Множественное поле - Страница 2 - Мир MS Excel

Старая форма входа
  • Страница 2 из 2
  • «
  • 1
  • 2
Модератор форума: китин, _Boroda_  
Множественное поле
Мур Дата: Понедельник, 30.07.2012, 17:27 | Сообщение № 21
Группа: Проверенные
Ранг: Обитатель
Сообщений: 436
Репутация: 19 ±
Замечаний: 0% ±

Приветствую Serge_007.
С комментариями ясно, с типом переменной тоже.
Мне бы знать кто там(внутри кода) обработчик, а кто еще кто.
 
Ответить
СообщениеПриветствую Serge_007.
С комментариями ясно, с типом переменной тоже.
Мне бы знать кто там(внутри кода) обработчик, а кто еще кто.

Автор - Мур
Дата добавления - 30.07.2012 в 17:27
Мур Дата: Суббота, 04.05.2013, 20:52 | Сообщение № 22
Группа: Проверенные
Ранг: Обитатель
Сообщений: 436
Репутация: 19 ±
Замечаний: 0% ±

Приветствую участников!
Успешно пользовался кодом подаренным мне Саней
[vba]
Код
Option Explicit
Private vCurr As Variant
Private Sub Worksheet_Change(ByVal Target As Range)
if len(target.value)=0 then
       vcurr=0
       exit sub
   end if
       If Target.Column =34  Then
           Application.EnableEvents = False
           Target.Value = vCurr & " " & Target.Value
           Application.EnableEvents = True
           vCurr = Target.Value
       End If
End Sub
     
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
       If Target.Column =34 Then
           vCurr = Target.Value
       End If
End Sub
[/vba]
Но сегодня появилась необходимость его доработать.
Подскажите пожалуйста как задать эти свойства:
1 смежным столбцам;
2 несмежным столбцам?
Всем заранее спасибо!


Сообщение отредактировал Мур - Суббота, 04.05.2013, 20:53
 
Ответить
СообщениеПриветствую участников!
Успешно пользовался кодом подаренным мне Саней
[vba]
Код
Option Explicit
Private vCurr As Variant
Private Sub Worksheet_Change(ByVal Target As Range)
if len(target.value)=0 then
       vcurr=0
       exit sub
   end if
       If Target.Column =34  Then
           Application.EnableEvents = False
           Target.Value = vCurr & " " & Target.Value
           Application.EnableEvents = True
           vCurr = Target.Value
       End If
End Sub
     
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
       If Target.Column =34 Then
           vCurr = Target.Value
       End If
End Sub
[/vba]
Но сегодня появилась необходимость его доработать.
Подскажите пожалуйста как задать эти свойства:
1 смежным столбцам;
2 несмежным столбцам?
Всем заранее спасибо!

Автор - Мур
Дата добавления - 04.05.2013 в 20:52
Саня Дата: Воскресенье, 05.05.2013, 11:16 | Сообщение № 23
Группа: Друзья
Ранг: Ветеран
Сообщений: 1068
Репутация: 560 ±
Замечаний: 0% ±

XL 2016
блок
[vba]
Код
    If Target.Column =34  Then
           ...
       End If
[/vba]

заменяем на:
[vba]
Код
    If Target.Column =34 Or Target.Column =39 Or Target.Column =65 Then '  Or Target.Column =xx можешь добавить сколько хочешь
           ...
       End If
[/vba]
если столбцов много, то лучше так:
[vba]
Код
    select case Target.Column    
       case 34, 39, 65
           ...
       End select
[/vba]

смежные:
[vba]
Код
    If Target.Column >=34 And Target.Column <=36 Then    
           ...
       End If
[/vba]

[vba]
Код
    select case Target.Column    
       case 34 to 36            ' для смежно-несмежных можно так case 34 to 36, 65, 125, is >150
           ...
       End select
[/vba]
 
Ответить
Сообщениеблок
[vba]
Код
    If Target.Column =34  Then
           ...
       End If
[/vba]

заменяем на:
[vba]
Код
    If Target.Column =34 Or Target.Column =39 Or Target.Column =65 Then '  Or Target.Column =xx можешь добавить сколько хочешь
           ...
       End If
[/vba]
если столбцов много, то лучше так:
[vba]
Код
    select case Target.Column    
       case 34, 39, 65
           ...
       End select
[/vba]

смежные:
[vba]
Код
    If Target.Column >=34 And Target.Column <=36 Then    
           ...
       End If
[/vba]

[vba]
Код
    select case Target.Column    
       case 34 to 36            ' для смежно-несмежных можно так case 34 to 36, 65, 125, is >150
           ...
       End select
[/vba]

Автор - Саня
Дата добавления - 05.05.2013 в 11:16
Мур Дата: Воскресенье, 05.05.2013, 14:12 | Сообщение № 24
Группа: Проверенные
Ранг: Обитатель
Сообщений: 436
Репутация: 19 ±
Замечаний: 0% ±

Огромное, преогромное спасибо!!!
 
Ответить
СообщениеОгромное, преогромное спасибо!!!

Автор - Мур
Дата добавления - 05.05.2013 в 14:12
  • Страница 2 из 2
  • «
  • 1
  • 2
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!