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

Вход

Регистрация

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

 

= Мир MS Excel/Смена Label из ячейки - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Смена Label из ячейки (Макросы/Sub)
Смена Label из ячейки
Amon Дата: Вторник, 15.05.2018, 13:34 | Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 65
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Добрый день. Создал форму топорную пока что, не могу понять как сделать так чтобы после ответа да или ввода в форму текстбокса даже не знаю как правильно сделать, чтобы менялись значения
[vba]
Код

Public Sub UserForm_Initialize()
Me.Label1 = Results.Range("b8").Value
Me.Label2 = Results.Range("с8").Value
End Sub
[/vba]
как сделать так чтобы эти 2 значения label1 & label2 менялись, ну к примеру вниз б8 и с8 потом б9 и с9 и тд при этом выполнялся макрос который ищет дату и если не находит то создает столбец и заносит результат в него он в основном документе
Спасибо
Документ прикладываю но их тут 2 основй МФО договор, работают вместе.
К сообщению приложен файл: MFO_Dogovor.xlsm (71.8 Kb) · Resultati.xlsm (33.8 Kb)


Сообщение отредактировал Amon - Вторник, 15.05.2018, 13:46
 
Ответить
СообщениеДобрый день. Создал форму топорную пока что, не могу понять как сделать так чтобы после ответа да или ввода в форму текстбокса даже не знаю как правильно сделать, чтобы менялись значения
[vba]
Код

Public Sub UserForm_Initialize()
Me.Label1 = Results.Range("b8").Value
Me.Label2 = Results.Range("с8").Value
End Sub
[/vba]
как сделать так чтобы эти 2 значения label1 & label2 менялись, ну к примеру вниз б8 и с8 потом б9 и с9 и тд при этом выполнялся макрос который ищет дату и если не находит то создает столбец и заносит результат в него он в основном документе
Спасибо
Документ прикладываю но их тут 2 основй МФО договор, работают вместе.

Автор - Amon
Дата добавления - 15.05.2018 в 13:34
StoTisteg Дата: Вторник, 15.05.2018, 14:30 | Сообщение № 2
Группа: Авторы
Ранг: Старожил
Сообщений: 1161
Репутация: 103 ±
Замечаний: 0% ±

Excel 2010
Честно говоря, даже не глядя на файлы хочется поправить:
[vba]
Код
Public Sub UserForm_Initialize()
Me.Label1.Caption = Results.Range("b8").Value
Me.Label2.Caption = Results.Range("с8").Value
End Sub
[/vba]
А Results что у Вас? Переменная типа Worksheet?


Интуитивно понятный код - это когда интуитивно понятно, что это код.
 
Ответить
СообщениеЧестно говоря, даже не глядя на файлы хочется поправить:
[vba]
Код
Public Sub UserForm_Initialize()
Me.Label1.Caption = Results.Range("b8").Value
Me.Label2.Caption = Results.Range("с8").Value
End Sub
[/vba]
А Results что у Вас? Переменная типа Worksheet?

Автор - StoTisteg
Дата добавления - 15.05.2018 в 14:30
StoTisteg Дата: Вторник, 15.05.2018, 14:33 | Сообщение № 3
Группа: Авторы
Ранг: Старожил
Сообщений: 1161
Репутация: 103 ±
Замечаний: 0% ±

Excel 2010
И если можно, изложите, пожалуйста, фрагмент
как сделать так чтобы эти 2 значения label1 & label2 менялись, ну к примеру вниз б8 и с8 потом б9 и с9 и тд при этом выполнялся макрос который ищет дату и если не находит то создает столбец и заносит результат в него он в основном документе

на более русском языке, я, признаться, ничего не понял.


Интуитивно понятный код - это когда интуитивно понятно, что это код.
 
Ответить
СообщениеИ если можно, изложите, пожалуйста, фрагмент
как сделать так чтобы эти 2 значения label1 & label2 менялись, ну к примеру вниз б8 и с8 потом б9 и с9 и тд при этом выполнялся макрос который ищет дату и если не находит то создает столбец и заносит результат в него он в основном документе

на более русском языке, я, признаться, ничего не понял.

Автор - StoTisteg
Дата добавления - 15.05.2018 в 14:33
Amon Дата: Вторник, 15.05.2018, 14:48 | Сообщение № 4
Группа: Пользователи
Ранг: Участник
Сообщений: 65
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
во втором документе таблица
Действие , ожидаемый результат и в третий столбец в той же строке должны заноситься значения.
Так вот Лейбл 1 берет значение из столбца "действие" лейбл 2 из столбца "ожидаемые результат" а ответ Да или же текстбокс вноситься в третий столбец в таблицу фактический результат. в той же строке
И после этого он должен брать теже значения с той же строки только на одну ниже. и тд.


Сообщение отредактировал Amon - Вторник, 15.05.2018, 17:02
 
Ответить
Сообщениево втором документе таблица
Действие , ожидаемый результат и в третий столбец в той же строке должны заноситься значения.
Так вот Лейбл 1 берет значение из столбца "действие" лейбл 2 из столбца "ожидаемые результат" а ответ Да или же текстбокс вноситься в третий столбец в таблицу фактический результат. в той же строке
И после этого он должен брать теже значения с той же строки только на одну ниже. и тд.

Автор - Amon
Дата добавления - 15.05.2018 в 14:48
StoTisteg Дата: Вторник, 15.05.2018, 14:58 | Сообщение № 5
Группа: Авторы
Ранг: Старожил
Сообщений: 1161
Репутация: 103 ±
Замечаний: 0% ±

Excel 2010
А разве caption это не название самого Лейбла?

Это свойство, коих у него множество. Обычно дефолтное свойство Caption, да, но я бы не стал на это полагаться...


Интуитивно понятный код - это когда интуитивно понятно, что это код.
 
Ответить
Сообщение
А разве caption это не название самого Лейбла?

Это свойство, коих у него множество. Обычно дефолтное свойство Caption, да, но я бы не стал на это полагаться...

Автор - StoTisteg
Дата добавления - 15.05.2018 в 14:58
Amon Дата: Вторник, 15.05.2018, 15:00 | Сообщение № 6
Группа: Пользователи
Ранг: Участник
Сообщений: 65
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
А разве caption это не название самого Лейбла?

Это свойство, коих у него множество. Обычно дефолтное свойство Caption, да, но я бы не стал на это полагаться...

Ничего не понял. ( Что значит вы бы не стали на это полагаться и почему?
 
Ответить
Сообщение
А разве caption это не название самого Лейбла?

Это свойство, коих у него множество. Обычно дефолтное свойство Caption, да, но я бы не стал на это полагаться...

Ничего не понял. ( Что значит вы бы не стали на это полагаться и почему?

Автор - Amon
Дата добавления - 15.05.2018 в 15:00
StoTisteg Дата: Вторник, 15.05.2018, 15:06 | Сообщение № 7
Группа: Авторы
Ранг: Старожил
Сообщений: 1161
Репутация: 103 ±
Замечаний: 0% ±

Excel 2010
Ошибка у Вас, конечно, детская :) Имя книги — литерал, его в кавычки надо.
К сообщению приложен файл: 8869978.xlsm (34.2 Kb)


Интуитивно понятный код - это когда интуитивно понятно, что это код.

Сообщение отредактировал StoTisteg - Вторник, 15.05.2018, 15:13
 
Ответить
СообщениеОшибка у Вас, конечно, детская :) Имя книги — литерал, его в кавычки надо.

Автор - StoTisteg
Дата добавления - 15.05.2018 в 15:06
_Boroda_ Дата: Вторник, 15.05.2018, 15:08 | Сообщение № 8
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16666
Репутация: 6478 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Amon, - Прочитайте Правила форума
Особенно внимательно п. 5j. И поправьте свои посты. До исправления постов все ответы будут удаляться администрацией


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеAmon, - Прочитайте Правила форума
Особенно внимательно п. 5j. И поправьте свои посты. До исправления постов все ответы будут удаляться администрацией

Автор - _Boroda_
Дата добавления - 15.05.2018 в 15:08
Amon Дата: Вторник, 15.05.2018, 17:03 | Сообщение № 9
Группа: Пользователи
Ранг: Участник
Сообщений: 65
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Особенно внимательно п. 5j.

Простите я это не намеренно(
Я все исправил? Или нет.
 
Ответить
Сообщение
Особенно внимательно п. 5j.

Простите я это не намеренно(
Я все исправил? Или нет.

Автор - Amon
Дата добавления - 15.05.2018 в 17:03
StoTisteg Дата: Вторник, 15.05.2018, 17:10 | Сообщение № 10
Группа: Авторы
Ранг: Старожил
Сообщений: 1161
Репутация: 103 ±
Замечаний: 0% ±

Excel 2010
Я все исправил?

На мой взгляд ОК, но я не модератор :)


Интуитивно понятный код - это когда интуитивно понятно, что это код.
 
Ответить
Сообщение
Я все исправил?

На мой взгляд ОК, но я не модератор :)

Автор - StoTisteg
Дата добавления - 15.05.2018 в 17:10
StoTisteg Дата: Вторник, 15.05.2018, 17:13 | Сообщение № 11
Группа: Авторы
Ранг: Старожил
Сообщений: 1161
Репутация: 103 ±
Замечаний: 0% ±

Excel 2010
Что значит вы бы не стали на это полагаться и почему?

Потому что если к объекту обращались ранее, одному Биллу Гейтсу ведомо, что он вернёт при таком обращении вместо дефолтного свойства...


Интуитивно понятный код - это когда интуитивно понятно, что это код.
 
Ответить
Сообщение
Что значит вы бы не стали на это полагаться и почему?

Потому что если к объекту обращались ранее, одному Биллу Гейтсу ведомо, что он вернёт при таком обращении вместо дефолтного свойства...

Автор - StoTisteg
Дата добавления - 15.05.2018 в 17:13
Amon Дата: Вторник, 15.05.2018, 17:51 | Сообщение № 12
Группа: Пользователи
Ранг: Участник
Сообщений: 65
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
одному Биллу Гейтсу ведомо, что он вернёт при таком обращении вместо дефолтного свойства

Спасибо большое, буду иметь ввиду. Изменил.
Сделал пока что так, вроде работает. Правда мне кажется макросы в UserForm не очень наверное и все равно, Спасибо, тему наверное можно закрывать.
[vba]
Код

Public Sub CommandButton1_Click()
    Dim rCell As Range
        With Results
            If .Cells.Find(test.[c2]) Is Nothing Then
                .Columns("D").Insert xlRight, xlFormatFromRightOrBelow
                .Range("D8:D23").Interior.Color = RGB(120, 7, 7)
                    .[d4].Value = test.[a4]
                    .[d3].Value = test.[a6]
                    .[d5].Value = "Фактический результат"
                    .[d6].Value = test.[c2]
                        .[d3:d7].HorizontalAlignment = xlCenterAcrossSelection
                        .[d3:d23].EntireColumn.AutoFit
                            .[d3:d23].Resize(21).Borders.Weight = xlMedium
            End If
    If Me.Label1.Caption = Results.Range("b7").Value And Me.Label2.Caption = Results.Range("c7").Value Then
        Set rCell = Intersect(.Rows(7), .Cells.Find(test.[c2]).EntireColumn)
    ElseIf Me.Label1.Caption = Results.Range("b8").Value And Me.Label2.Caption = Results.Range("c8").Value Then
        Set rCell = Intersect(.Rows(8), .Cells.Find(test.[c2]).EntireColumn)
        End If
        If IsEmpty(rCell) = False Then
    With Results
                .Columns("D").Insert xlRight, xlFormatFromRightOrBelow
                .Range("D8:D23").Interior.Color = RGB(120, 7, 7)
                    .[d4].Value = test.[a4]
                    .[d3].Value = test.[a6]
                    .[d5].Value = "Фактический результат"
                    .[d6].Value = test.[c2]
                        .[d3:d7].HorizontalAlignment = xlCenterAcrossSelection
                        .[d3:d23].EntireColumn.AutoFit
                            .[d3:d23].Resize(21).Borders.Weight = xlMedium
          If Me.Label1.Caption = Results.Range("b7").Value And Me.Label2.Caption = Results.Range("c7").Value Then
        Set rCell = Intersect(.Rows(7), .Cells.Find(test.[c2]).EntireColumn)
    ElseIf Me.Label1.Caption = Results.Range("b8").Value And Me.Label2.Caption = Results.Range("c8").Value Then
        Set rCell = Intersect(.Rows(8), .Cells.Find(test.[c2]).EntireColumn)
        End If
          'Set rCell = Intersect(.Rows(8), .Cells.Find(test.[c2]).EntireColumn)
               End With
               End If
    With rCell
    rCell.WrapText = True
    .Value = "Ошибок нет"
    .Interior.Color = vbGreen
    End With
    Me.Label1.Caption = Results.Range("b8").Value
    Me.Label2.Caption = Results.Range("c8").Value
   End With
End Sub
[/vba]
 
Ответить
Сообщение
одному Биллу Гейтсу ведомо, что он вернёт при таком обращении вместо дефолтного свойства

Спасибо большое, буду иметь ввиду. Изменил.
Сделал пока что так, вроде работает. Правда мне кажется макросы в UserForm не очень наверное и все равно, Спасибо, тему наверное можно закрывать.
[vba]
Код

Public Sub CommandButton1_Click()
    Dim rCell As Range
        With Results
            If .Cells.Find(test.[c2]) Is Nothing Then
                .Columns("D").Insert xlRight, xlFormatFromRightOrBelow
                .Range("D8:D23").Interior.Color = RGB(120, 7, 7)
                    .[d4].Value = test.[a4]
                    .[d3].Value = test.[a6]
                    .[d5].Value = "Фактический результат"
                    .[d6].Value = test.[c2]
                        .[d3:d7].HorizontalAlignment = xlCenterAcrossSelection
                        .[d3:d23].EntireColumn.AutoFit
                            .[d3:d23].Resize(21).Borders.Weight = xlMedium
            End If
    If Me.Label1.Caption = Results.Range("b7").Value And Me.Label2.Caption = Results.Range("c7").Value Then
        Set rCell = Intersect(.Rows(7), .Cells.Find(test.[c2]).EntireColumn)
    ElseIf Me.Label1.Caption = Results.Range("b8").Value And Me.Label2.Caption = Results.Range("c8").Value Then
        Set rCell = Intersect(.Rows(8), .Cells.Find(test.[c2]).EntireColumn)
        End If
        If IsEmpty(rCell) = False Then
    With Results
                .Columns("D").Insert xlRight, xlFormatFromRightOrBelow
                .Range("D8:D23").Interior.Color = RGB(120, 7, 7)
                    .[d4].Value = test.[a4]
                    .[d3].Value = test.[a6]
                    .[d5].Value = "Фактический результат"
                    .[d6].Value = test.[c2]
                        .[d3:d7].HorizontalAlignment = xlCenterAcrossSelection
                        .[d3:d23].EntireColumn.AutoFit
                            .[d3:d23].Resize(21).Borders.Weight = xlMedium
          If Me.Label1.Caption = Results.Range("b7").Value And Me.Label2.Caption = Results.Range("c7").Value Then
        Set rCell = Intersect(.Rows(7), .Cells.Find(test.[c2]).EntireColumn)
    ElseIf Me.Label1.Caption = Results.Range("b8").Value And Me.Label2.Caption = Results.Range("c8").Value Then
        Set rCell = Intersect(.Rows(8), .Cells.Find(test.[c2]).EntireColumn)
        End If
          'Set rCell = Intersect(.Rows(8), .Cells.Find(test.[c2]).EntireColumn)
               End With
               End If
    With rCell
    rCell.WrapText = True
    .Value = "Ошибок нет"
    .Interior.Color = vbGreen
    End With
    Me.Label1.Caption = Results.Range("b8").Value
    Me.Label2.Caption = Results.Range("c8").Value
   End With
End Sub
[/vba]

Автор - Amon
Дата добавления - 15.05.2018 в 17:51
StoTisteg Дата: Вторник, 15.05.2018, 17:56 | Сообщение № 13
Группа: Авторы
Ранг: Старожил
Сообщений: 1161
Репутация: 103 ±
Замечаний: 0% ±

Excel 2010
Это не рабочий код. Вижу строку[vba]
Код
With Results
[/vba], не вижу вычисления значения переменной Results.


Интуитивно понятный код - это когда интуитивно понятно, что это код.
 
Ответить
СообщениеЭто не рабочий код. Вижу строку[vba]
Код
With Results
[/vba], не вижу вычисления значения переменной Results.

Автор - StoTisteg
Дата добавления - 15.05.2018 в 17:56
Amon Дата: Вторник, 15.05.2018, 17:59 | Сообщение № 14
Группа: Пользователи
Ранг: Участник
Сообщений: 65
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
не вижу вычисления значения переменной Results.

Этот код в форме
Results это это лист книги из другого документа. Public Results as Worksheet в модуле а Set Results = Workbooks("Resultati.xlsm").Worksheets("MFO") в книге.
я надеюсь в этот раз я ничего не нарушил ^_^


Сообщение отредактировал Amon - Вторник, 15.05.2018, 17:59
 
Ответить
Сообщение
не вижу вычисления значения переменной Results.

Этот код в форме
Results это это лист книги из другого документа. Public Results as Worksheet в модуле а Set Results = Workbooks("Resultati.xlsm").Worksheets("MFO") в книге.
я надеюсь в этот раз я ничего не нарушил ^_^

Автор - Amon
Дата добавления - 15.05.2018 в 17:59
RAN Дата: Вторник, 15.05.2018, 20:35 | Сообщение № 15
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Вижу строку

Плохо, когда со зрением проблемы. Нужно видеть сразу две. :D


Быть или не быть, вот в чем загвоздка!
 
Ответить
Сообщение
Вижу строку

Плохо, когда со зрением проблемы. Нужно видеть сразу две. :D

Автор - RAN
Дата добавления - 15.05.2018 в 20:35
StoTisteg Дата: Среда, 16.05.2018, 10:08 | Сообщение № 16
Группа: Авторы
Ранг: Старожил
Сообщений: 1161
Репутация: 103 ±
Замечаний: 0% ±

Excel 2010
Плохо, когда со зрением проблемы

[offtop]И не говорите... Сидишь, блин, экспериментальным путём расстояние от носа до монитора подбираешь yes [/offtop]


Интуитивно понятный код - это когда интуитивно понятно, что это код.
 
Ответить
Сообщение
Плохо, когда со зрением проблемы

[offtop]И не говорите... Сидишь, блин, экспериментальным путём расстояние от носа до монитора подбираешь yes [/offtop]

Автор - StoTisteg
Дата добавления - 16.05.2018 в 10:08
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Смена Label из ячейки (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

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