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

Вход

Регистрация

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

 

= Мир MS Excel/Поменять стоимость выбранного значения - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Поменять стоимость выбранного значения (Макросы/Sub)
Поменять стоимость выбранного значения
ant6729 Дата: Вторник, 28.03.2017, 23:45 | Сообщение № 1
Группа: Проверенные
Ранг: Ветеран
Сообщений: 533
Репутация: 2 ±
Замечаний: 40% ±

Excel 2010
В таблице нужно поменять стоимость выбранного значения

Результат я уже достиг более удобным путем

Но для понимания языка прошу подсказать, как в таблице можно поменять стоимость выбранного значения , используя в коде InputBox

Вот мой код, который я не могу доработать
Прошу помочь довести его до ума
И меня тоже)

[vba]
Код
Sub yyy()

Dim i&
Dim Produce As String
Dim Price As Variant

Produce = InputBox("Какое название продукта?")

Price = InputBox("На какую стоимость менять?")

For Each cell In Sheets("Лист1").Range("A2:A" & i)

Sheets("Лист1").Cells(i, 2) = Price

Next cell

End Sub
[/vba]
К сообщению приложен файл: 333.xlsx (8.4 Kb)


Сообщение отредактировал ant6729 - Среда, 29.03.2017, 06:58
 
Ответить
СообщениеВ таблице нужно поменять стоимость выбранного значения

Результат я уже достиг более удобным путем

Но для понимания языка прошу подсказать, как в таблице можно поменять стоимость выбранного значения , используя в коде InputBox

Вот мой код, который я не могу доработать
Прошу помочь довести его до ума
И меня тоже)

[vba]
Код
Sub yyy()

Dim i&
Dim Produce As String
Dim Price As Variant

Produce = InputBox("Какое название продукта?")

Price = InputBox("На какую стоимость менять?")

For Each cell In Sheets("Лист1").Range("A2:A" & i)

Sheets("Лист1").Cells(i, 2) = Price

Next cell

End Sub
[/vba]

Автор - ant6729
Дата добавления - 28.03.2017 в 23:45
KuklP Дата: Среда, 29.03.2017, 07:21 | Сообщение № 2
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
[vba]
Код
Sub yyy()
    Dim i&
    Dim Produce As String
    Dim Price, cell As Range
    Produce = InputBox("Какое название продукта?")
    Price = InputBox("На какую стоимость менять?")
    For Each cell In Sheets("Лист1").Range("A2:A" & Cells(Rows.Count, 1).End(xlUp).Row)
        If cell.Value = Produce Then cell(1, 2) = Price
    Next cell
End Sub
[/vba]


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728
 
Ответить
Сообщение[vba]
Код
Sub yyy()
    Dim i&
    Dim Produce As String
    Dim Price, cell As Range
    Produce = InputBox("Какое название продукта?")
    Price = InputBox("На какую стоимость менять?")
    For Each cell In Sheets("Лист1").Range("A2:A" & Cells(Rows.Count, 1).End(xlUp).Row)
        If cell.Value = Produce Then cell(1, 2) = Price
    Next cell
End Sub
[/vba]

Автор - KuklP
Дата добавления - 29.03.2017 в 07:21
K-SerJC Дата: Среда, 29.03.2017, 08:13 | Сообщение № 3
Группа: Проверенные
Ранг: Обитатель
Сообщений: 487
Репутация: 86 ±
Замечаний: 0% ±

Excel 2013
KuklP,
может так?
[vba]
Код
If cell.Value = Produce Then Sheets("Лист1").cells(cell.row, 2) = Price
[/vba]

чисто теоретически, сам не пробовал, но подумал что cell(1, 2) значение запишет в первой строке, 2 колонки


Благими намерениями выстелена дорога в АД.
 
Ответить
СообщениеKuklP,
может так?
[vba]
Код
If cell.Value = Produce Then Sheets("Лист1").cells(cell.row, 2) = Price
[/vba]

чисто теоретически, сам не пробовал, но подумал что cell(1, 2) значение запишет в первой строке, 2 колонки

Автор - K-SerJC
Дата добавления - 29.03.2017 в 08:13
KuklP Дата: Среда, 29.03.2017, 08:15 | Сообщение № 4
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
Так попробуйте, что мешает? :)


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728
 
Ответить
СообщениеТак попробуйте, что мешает? :)

Автор - KuklP
Дата добавления - 29.03.2017 в 08:15
Pelena Дата: Среда, 29.03.2017, 08:23 | Сообщение № 5
Группа: Админы
Ранг: Местный житель
Сообщений: 19187
Репутация: 4421 ±
Замечаний: ±

Excel 365 & Mac Excel
Я вот тоже не поняла, все цены с одинаковым названием продукта менять или только
стоимость выбранного значения
На всякий случай такой вариант с выбором названия
[vba]
Код
Sub yyy()
    Dim i&
    Dim Produce As Range
    Dim Price As Variant
    Dim Cel As Range
    Set Produce = Application.InputBox(Prompt:="Выберите название продукта?", Type:=8)
    If Produce.Column <> 1 Then MsgBox "это не название": Exit Sub
    Price = InputBox("На какую стоимость менять?")
    Produce.Offset(, 1) = Price
End Sub
[/vba]


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеЯ вот тоже не поняла, все цены с одинаковым названием продукта менять или только
стоимость выбранного значения
На всякий случай такой вариант с выбором названия
[vba]
Код
Sub yyy()
    Dim i&
    Dim Produce As Range
    Dim Price As Variant
    Dim Cel As Range
    Set Produce = Application.InputBox(Prompt:="Выберите название продукта?", Type:=8)
    If Produce.Column <> 1 Then MsgBox "это не название": Exit Sub
    Price = InputBox("На какую стоимость менять?")
    Produce.Offset(, 1) = Price
End Sub
[/vba]

Автор - Pelena
Дата добавления - 29.03.2017 в 08:23
KuklP Дата: Среда, 29.03.2017, 08:27 | Сообщение № 6
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
Привет, Леночек. Я так понял, что все. Иначе смысл огород городить с инпутбоксами да вводами, проще в ячейке одну цифру вписать :)


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728
 
Ответить
СообщениеПривет, Леночек. Я так понял, что все. Иначе смысл огород городить с инпутбоксами да вводами, проще в ячейке одну цифру вписать :)

Автор - KuklP
Дата добавления - 29.03.2017 в 08:27
Pelena Дата: Среда, 29.03.2017, 08:29 | Сообщение № 7
Группа: Админы
Ранг: Местный житель
Сообщений: 19187
Репутация: 4421 ±
Замечаний: ±

Excel 365 & Mac Excel
Привет, Сергей)
Автору надо
для понимания языка

:)


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеПривет, Сергей)
Автору надо
для понимания языка

:)

Автор - Pelena
Дата добавления - 29.03.2017 в 08:29
ant6729 Дата: Среда, 29.03.2017, 11:16 | Сообщение № 8
Группа: Проверенные
Ранг: Ветеран
Сообщений: 533
Репутация: 2 ±
Замечаний: 40% ±

Excel 2010
K-SerJC нет, не работает.... я вроде, тем путем ходил уже

Да, спасибо, Pelena, работает!

Но все равно объясните, пожалуйста

Потому что я меняю в dim с Range на String, а в Type ставлю 2 - выдает ошибку (это я хотел не ссылкой вставлять в Inputbox, а все таки руками писать, ну, хочется мне уот так!))
А msgbox выдаёт, что он обджект хочет

Отсюда вопросs
Почему мои манипуляции не сработали
Как сделать, чтобы я вносил руками название продукта всё ж таки
 
Ответить
СообщениеK-SerJC нет, не работает.... я вроде, тем путем ходил уже

Да, спасибо, Pelena, работает!

Но все равно объясните, пожалуйста

Потому что я меняю в dim с Range на String, а в Type ставлю 2 - выдает ошибку (это я хотел не ссылкой вставлять в Inputbox, а все таки руками писать, ну, хочется мне уот так!))
А msgbox выдаёт, что он обджект хочет

Отсюда вопросs
Почему мои манипуляции не сработали
Как сделать, чтобы я вносил руками название продукта всё ж таки

Автор - ant6729
Дата добавления - 29.03.2017 в 11:16
ant6729 Дата: Среда, 29.03.2017, 11:28 | Сообщение № 9
Группа: Проверенные
Ранг: Ветеран
Сообщений: 533
Репутация: 2 ±
Замечаний: 40% ±

Excel 2010
Стойте... просмотрел я что ли или что

KuklP Ваш первый код работает, могу печатать руками, спасибо!!!

Всем спасибо!)


Сообщение отредактировал ant6729 - Среда, 29.03.2017, 11:30
 
Ответить
СообщениеСтойте... просмотрел я что ли или что

KuklP Ваш первый код работает, могу печатать руками, спасибо!!!

Всем спасибо!)

Автор - ant6729
Дата добавления - 29.03.2017 в 11:28
KuklP Дата: Среда, 29.03.2017, 11:29 | Сообщение № 10
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
Я уж подумал, что я невидимка..


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728
 
Ответить
СообщениеЯ уж подумал, что я невидимка..

Автор - KuklP
Дата добавления - 29.03.2017 в 11:29
K-SerJC Дата: Среда, 29.03.2017, 14:02 | Сообщение № 11
Группа: Проверенные
Ранг: Обитатель
Сообщений: 487
Репутация: 86 ±
Замечаний: 0% ±

Excel 2013
Так попробуйте, что мешает? :)

да... сколько раз говорил себе неторописька...
cell и cells в данном случае разные вещи...


Благими намерениями выстелена дорога в АД.
 
Ответить
Сообщение
Так попробуйте, что мешает? :)

да... сколько раз говорил себе неторописька...
cell и cells в данном случае разные вещи...

Автор - K-SerJC
Дата добавления - 29.03.2017 в 14:02
KuklP Дата: Среда, 29.03.2017, 14:11 | Сообщение № 12
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
Они во всех случаях разные вещи. cell - это переменная, может быть любого типа и обозначать все, что угодно, а cells - зарезервированное слово, обозначающее объект типа Range deal


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728
 
Ответить
СообщениеОни во всех случаях разные вещи. cell - это переменная, может быть любого типа и обозначать все, что угодно, а cells - зарезервированное слово, обозначающее объект типа Range deal

Автор - KuklP
Дата добавления - 29.03.2017 в 14:11
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Поменять стоимость выбранного значения (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

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