Excel - чи можу я встановити клітинку рівній певній величині, незалежно від того, що введено в ній?


61

Це зіграти в когось жарт ... не впевнений, чи можна робити те, що я хочу. Ми передаємо файл Excel серед друзів, щоб вибрати гравців для турніру з гольфу. Я хотів би встановити клітинку (називайте її А1), щоб вона відображала певне ім’я (називайте її Джо) незалежно від того, що хтось вводить до неї.

A1 має бути порожнім, поки хтось не спробує ввести ім’я. Коли хтось вводить ім’я - будь-яке ім'я - воно автоматично змінюється на Джо після того, як він натисне клавішу Enter.

Умовне форматування не працює, оскільки, як видається, він адресує лише вигляд значення в комірці A1.

Формула не працює, тому що вони побачать щось у комірці.

Автокорекція - хоча це матиме точний ефект, який я шукаю - не працює з / п, який зберігається на моєму комп’ютері і не передається разом із файлом.

Будь-які ідеї?

Відповіді:


110

Як макро-менш альтернативна, це не змінить значення комірки, але змінить відображення комірки. Клацніть правою кнопкою миші на комірці, про яку йдеться, а потім натисніть "Форматувати комірки". На вкладці цифр натисніть кнопку Спеціальний, а потім введіть наступний спеціальний формат чисел

"Joe";"Joe";"Joe";"Joe"

Пояснення: Формати чисел Excel мають чотири частини, розділені крапками з комою. Значення комірки визначає, яка частина цифрового формату використовується, а формат виглядає приблизно так:

[positive];[negative];[zero];[text] 

Оскільки кожен розділ являє собою жорстко закодований рядок, "Джо" відображатиметься незалежно від введених даних, навіть якщо формула вводиться (якщо тільки ця формула не повертає помилку). Зазвичай формати чисел використовуються для відображення негативних цифр червоним кольором або вирівнювання знаків у десятковій або інші косметичні речі. Але їх також можна використовувати, щоб возитися з друзями.


12
Це епічно і весело. Тепер мені просто потрібно знайти ціль ...
Майкл Макгріф

3
Це абсолютно піднесено. Тепер я хочу щось придумати, щоб мати привід зробити це комусь :)
Kaz

1
Додавання деякої інформації про те, чому це працює у форматі, справді зробить цю відповідь зоряною.
Райстафаріан

22
Щоб насправді хтось подумав, що їх аркуш Excel переслідує, спробуйте текст Ž̙̙̙̐́̐̐aͅl̞̬̖̬͎̲̦͚ͭ̄̿̇ͨ̀̈̕͢g̶̼̺̲͓͉̫͍͕̭ͤ̈͑͝o͚̭̬̹ͮͨ̎̅̌͌ͤ̇ , наприклад "J̼̼̝̟͇̺͖̹̄̋͌̽oe";"J̼̼̝̟͇̺͖̹̄̋͌̽oe";"J̼̼̝̟͇̺͖̹̄̋͌̽oe";"J̼̼̝̟͇̺͖̹̄̋͌̽oe"(здається, працює лише з однією літерою)
user568458

1
Я думаю, що під вашим сірим ящиком ви маєте на увазі "чотири" замість "за". Я не можу запропонувати змінити один символ.
Росс Мілікан

9

Помістіть наступний макрос події в області коду робочого аркуша:

Private Sub Worksheet_Change(ByVal Target As Range)
   If Intersect(Range("A1"), Target) Is Nothing Then Exit Sub
   Application.EnableEvents = False
      Range("A1").Value = "Joe"
   Application.EnableEvents = True
End Sub

9
Якщо макроси не будуть відключені за замовчуванням, якщо користувач їх не включив. Якщо його поділяють?
Kieran Dunn

@KieranDunn Ви праві, макроси повинні бути включені, щоб трюк працював.
Студент Гері
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.