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

Вход

Регистрация

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

 

= Мир MS Excel/Запись в целевую ячейку значения, а не формулы - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Запись в целевую ячейку значения, а не формулы (Макросы/Sub)
Запись в целевую ячейку значения, а не формулы
ant6729 Дата: Четверг, 27.04.2017, 03:03 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 244
Репутация: 0 ±
Замечаний: 60% ±

Excel 2010
Доброй ночи, вот мой "чудо-код".

[vba]
Код
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

    If IsEmpty(Target) Then Exit Sub
    If Target.Column <> 4 Then Exit Sub
    Cancel = True

    Sheets("Proc2").Cells(3, 4).Value = Target.Value
    

    Sheets("Proc2").Cells(4, 4).FormulaR1C1 = _
        "=(VLOOKUP(R[-1]C,DrD!C4:C8,4,0))&"" ""&(VLOOKUP(R[-1]C,DrD!C4:C8,5,0))"

    Cells(4, 4).Select

    Selection.Copy
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
         Application.CutCopyMode = False

         Range("D4").Select
    Selection.Copy
    ActiveSheet.Paste
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Application.CutCopyMode = False
    
End Sub
[/vba]

Я хочу, чтобы в Range("D4") оставалось просто значение, а не формула.
Не могу победить, помогите, пожалуйста.
К сообщению приложен файл: rrr.xlsx(13Kb)


Сообщение отредактировал ant6729 - Четверг, 27.04.2017, 08:19
 
Ответить
СообщениеДоброй ночи, вот мой "чудо-код".

[vba]
Код
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

    If IsEmpty(Target) Then Exit Sub
    If Target.Column <> 4 Then Exit Sub
    Cancel = True

    Sheets("Proc2").Cells(3, 4).Value = Target.Value
    

    Sheets("Proc2").Cells(4, 4).FormulaR1C1 = _
        "=(VLOOKUP(R[-1]C,DrD!C4:C8,4,0))&"" ""&(VLOOKUP(R[-1]C,DrD!C4:C8,5,0))"

    Cells(4, 4).Select

    Selection.Copy
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
         Application.CutCopyMode = False

         Range("D4").Select
    Selection.Copy
    ActiveSheet.Paste
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Application.CutCopyMode = False
    
End Sub
[/vba]

Я хочу, чтобы в Range("D4") оставалось просто значение, а не формула.
Не могу победить, помогите, пожалуйста.

Автор - ant6729
Дата добавления - 27.04.2017 в 03:03
and_evg Дата: Четверг, 27.04.2017, 07:49 | Сообщение № 2
Группа: Пользователи
Ранг: Участник
Сообщений: 91
Репутация: 17 ±
Замечаний: 0% ±

Excel 2007
[vba]
Код
Cells(4, 4).value=Cells(4, 4).value
[/vba]
 
Ответить
Сообщение[vba]
Код
Cells(4, 4).value=Cells(4, 4).value
[/vba]

Автор - and_evg
Дата добавления - 27.04.2017 в 07:49
KuklP Дата: Четверг, 27.04.2017, 07:57 | Сообщение № 3
Группа: Проверенные
Ранг: Старожил
Сообщений: 2111
Репутация: 453 ±
Замечаний: 0% ±

Ну и напишите:
[vba]
Код
Range("D4").value = Range("D4").value
[/vba]


Ну, с НДС и мы чего-то стoим! kuklp@mail.ru
WM Z206653985942, R334086032478, U238399322728
 
Ответить
СообщениеНу и напишите:
[vba]
Код
Range("D4").value = Range("D4").value
[/vba]

Автор - KuklP
Дата добавления - 27.04.2017 в 07:57
ant6729 Дата: Четверг, 27.04.2017, 08:18 | Сообщение № 4
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 244
Репутация: 0 ±
Замечаний: 60% ±

Excel 2010
Нет, не хочет

 
Ответить
СообщениеНет, не хочет


Автор - ant6729
Дата добавления - 27.04.2017 в 08:18
and_evg Дата: Четверг, 27.04.2017, 08:48 | Сообщение № 5
Группа: Пользователи
Ранг: Участник
Сообщений: 91
Репутация: 17 ±
Замечаний: 0% ±

Excel 2007
ant6729, что значит не хочет?
 
Ответить
Сообщениеant6729, что значит не хочет?

Автор - and_evg
Дата добавления - 27.04.2017 в 08:48
RAN Дата: Четверг, 27.04.2017, 09:54 | Сообщение № 6
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4419
Репутация: 872 ±
Замечаний: 0% ±

2010
Неча на зеркало пенять, коли формула крива.


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеНеча на зеркало пенять, коли формула крива.

Автор - RAN
Дата добавления - 27.04.2017 в 09:54
_Boroda_ Дата: Четверг, 27.04.2017, 12:50 | Сообщение № 7
Группа: Модераторы
Ранг: Экселист
Сообщений: 10334
Репутация: 4357 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
ant6729, Вы б написали словами что куда почему хотите. Гнетут меня смутные сомнения действительно ли Вы хотите вставлять значения в D4 при даблилике на любую ячейку столбца D
Но, если так действительно нужно, то как-то так
[vba]
Код
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If IsEmpty(Target) Then Exit Sub
    If Target.Column <> 4 Then Exit Sub
    Cancel = True
    Range("D4").FormulaR1C1 = _
        "=(VLOOKUP(R[-1]C,DrD!C4:C8,4,0))&"" ""&(VLOOKUP(R[-1]C,DrD!C4:C8,5,0))"
    Range("D4") = Range("D4").Value
End Sub
[/vba]


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
Сообщениеant6729, Вы б написали словами что куда почему хотите. Гнетут меня смутные сомнения действительно ли Вы хотите вставлять значения в D4 при даблилике на любую ячейку столбца D
Но, если так действительно нужно, то как-то так
[vba]
Код
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If IsEmpty(Target) Then Exit Sub
    If Target.Column <> 4 Then Exit Sub
    Cancel = True
    Range("D4").FormulaR1C1 = _
        "=(VLOOKUP(R[-1]C,DrD!C4:C8,4,0))&"" ""&(VLOOKUP(R[-1]C,DrD!C4:C8,5,0))"
    Range("D4") = Range("D4").Value
End Sub
[/vba]

Автор - _Boroda_
Дата добавления - 27.04.2017 в 12:50
ant6729 Дата: Четверг, 27.04.2017, 21:06 | Сообщение № 8
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 244
Репутация: 0 ±
Замечаний: 60% ±

Excel 2010
Ну, вот и все, добил.
[vba]
Код
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If IsEmpty(Target) Then Exit Sub
    If Target.Column <> 4 Then Exit Sub
    Cancel = True
    Sheets("Proc2").Cells(3, 4).Value = Target.Value
    Sheets("Proc2").Cells(4, 4).FormulaR1C1 = _
        "=(VLOOKUP(R[-1]C,DrD!C4:C8,4,0))&"" ""&(VLOOKUP(R[-1]C,DrD!C4:C8,5,0))"
    Sheets("Proc2").Cells(4, 4) = Sheets("Proc2").Cells(4, 4).Value
End Sub
[/vba]

and_evg - не работает
RAN - вот, же ж...блин))
_Boroda_ - а что ж я хочу... еще?) Спасибо за правильное направление в поиске. Да, без описания сложно понять, что именно на другой лист нужно переносить. Согласен. Сам себя заморочил только.


Сообщение отредактировал ant6729 - Четверг, 27.04.2017, 21:11
 
Ответить
СообщениеНу, вот и все, добил.
[vba]
Код
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    If IsEmpty(Target) Then Exit Sub
    If Target.Column <> 4 Then Exit Sub
    Cancel = True
    Sheets("Proc2").Cells(3, 4).Value = Target.Value
    Sheets("Proc2").Cells(4, 4).FormulaR1C1 = _
        "=(VLOOKUP(R[-1]C,DrD!C4:C8,4,0))&"" ""&(VLOOKUP(R[-1]C,DrD!C4:C8,5,0))"
    Sheets("Proc2").Cells(4, 4) = Sheets("Proc2").Cells(4, 4).Value
End Sub
[/vba]

and_evg - не работает
RAN - вот, же ж...блин))
_Boroda_ - а что ж я хочу... еще?) Спасибо за правильное направление в поиске. Да, без описания сложно понять, что именно на другой лист нужно переносить. Согласен. Сам себя заморочил только.

Автор - ant6729
Дата добавления - 27.04.2017 в 21:06
RAN Дата: Четверг, 27.04.2017, 23:22 | Сообщение № 9
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4419
Репутация: 872 ±
Замечаний: 0% ±

2010
ant6729, выкладывать какой-то код, и отдельно какой-то файл, не лучшая идея.
Я взял ваш файл, сунул туда ваш макрос, получил в итоге Н/Д, о чем вас известил. При этом мой интерес к вопросу упал до 0 градусов по Кельвину.
Учтите впрок.


Быть или не быть, вот в чем загвоздка!
 
Ответить
Сообщениеant6729, выкладывать какой-то код, и отдельно какой-то файл, не лучшая идея.
Я взял ваш файл, сунул туда ваш макрос, получил в итоге Н/Д, о чем вас известил. При этом мой интерес к вопросу упал до 0 градусов по Кельвину.
Учтите впрок.

Автор - RAN
Дата добавления - 27.04.2017 в 23:22
ant6729 Дата: Четверг, 27.04.2017, 23:26 | Сообщение № 10
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 244
Репутация: 0 ±
Замечаний: 60% ±

Excel 2010
Буду стараться максимально точно писать
 
Ответить
СообщениеБуду стараться максимально точно писать

Автор - ant6729
Дата добавления - 27.04.2017 в 23:26
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Запись в целевую ячейку значения, а не формулы (Макросы/Sub)
Страница 1 из 11
Поиск:

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