Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.03.2011, 12:31   #1
Severny
Форумчанин
 
Регистрация: 07.10.2010
Сообщений: 144
По умолчанию Формат текста в формуле

Добрый день!
Есть ли штатные средства изменить формат значений в формуле.
У меня функция СЦЕПИТЬ.
В примере 25 показана моя формула (она еще будет дорабатываться). Можно ли в ней значения что идут за "неопр.-" и "отв.хр.-" сделать ф формате числа с 2-я нулями после запятой или выделить их жирным (подчеркнутым)?
Юзал поиск:http://programmersforum.ru/showthrea...EE%F0%EC%E0%F2
Но в теме мне рекомендации SAS888 не подходят. А есть ли инструмент способный реализовать все без макроса никто утвердительно и не ответил.
Вложения
Тип файла: rar Пример 25.rar (4.1 Кб, 7 просмотров)
Severny вне форума Ответить с цитированием
Старый 10.03.2011, 12:36   #2
vikttur
Участник клуба
 
Регистрация: 16.05.2010
Сообщений: 1,249
По умолчанию

Цитата:
Сообщение от Severny Посмотреть сообщение
А есть ли инструмент способный реализовать все без макроса никто утвердительно и не ответил.
Для реализации такой задачи встроенных функций Excel нет.
Или Вам нужен обязательно утвердительный ответ?
vikttur вне форума Ответить с цитированием
Старый 10.03.2011, 12:37   #3
VictorM
Старожил
 
Аватар для VictorM
 
Регистрация: 15.05.2008
Сообщений: 2,058
По умолчанию

Цитата:
Есть ли штатные средства изменить формат значений в формуле.
таких средств НЕТ
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499
VictorM вне форума Ответить с цитированием
Старый 10.03.2011, 13:59   #4
Severny
Форумчанин
 
Регистрация: 07.10.2010
Сообщений: 144
По умолчанию

Цитата:
Сообщение от VictorM Посмотреть сообщение
таких средств НЕТ
Я Вам верю
Я подумал, что можно попробывать написать пользовательскую функцию.
Попробывал:

Public Function FormatIn(X As Range, A)
Dim Z As Variant
Dim A As Integer
Z = X.Value
If A = 1 Then Z.Font.Underline = xlUnderlineStyleSingle
If A = 2 Then Z.Font.Bold = True
If A = 3 Then Z.NumberFormat = "#,##0.00"
End Function

Но она не работает, так как это мой второй код за всю жизнь. Можно решить поставленую задачу с помощью польз. функции? Если да, то помогите ее написать.

Последний раз редактировалось Severny; 10.03.2011 в 14:18.
Severny вне форума Ответить с цитированием
Старый 10.03.2011, 14:23   #5
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Не работает не потому, что второй, а потому, что функция этого не может. Она только возвращает значения.
Можно что-то сделать условным форматированием.
п.1 и 2 c помошью УФ сделал, вот "#,##0.00" в 2000XL нет, как в 2007 - не знаю.
webmoney: E265281470651 Z422237915069 R418926282008

Последний раз редактировалось Hugo121; 10.03.2011 в 15:19.
Hugo121 вне форума Ответить с цитированием
Старый 10.03.2011, 15:35   #6
Severny
Форумчанин
 
Регистрация: 07.10.2010
Сообщений: 144
По умолчанию

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
...функция этого не может. Она только возвращает значения.
Жаль, очень жаль.

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
Можно что-то сделать условным форматированием.
п.1 и 2 c помошью УФ сделал, вот "#,##0.00" в 2000XL нет, как в 2007 - не знаю.
мм..как раз "#,##0.00" более всего надо.
Объясните пожалуйста как Вы с помощью УФ п.1 и 2 сделали. У меня 2010.
Severny вне форума Ответить с цитированием
Старый 10.03.2011, 16:10   #7
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Я делал в 2000-м - там УФ с виду немного другой.
Пусть про 2007/10-й расскажут те, кто с ним работает.
А формат можно макросом менять по событию изменения ячейки.
webmoney: E265281470651 Z422237915069 R418926282008

Последний раз редактировалось Hugo121; 10.03.2011 в 16:14.
Hugo121 вне форума Ответить с цитированием
Старый 11.03.2011, 09:10   #8
Severny
Форумчанин
 
Регистрация: 07.10.2010
Сообщений: 144
По умолчанию

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
А формат можно макросом менять по событию изменения ячейки.
Если Вас не затруднит, можно это детальней объяснить с примером?
Severny вне форума Ответить с цитированием
Старый 11.03.2011, 09:25   #9
VictorM
Старожил
 
Аватар для VictorM
 
Регистрация: 15.05.2008
Сообщений: 2,058
По умолчанию

Цитата:
Если Вас не затруднит, можно это детальней объяснить с примером?
Где-то так, для столбца "А", например
Код:
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
    If Target.Column = 1 Then
        With Selection
            .Font.Underline = xlUnderlineStyleSingle
            .Font.Bold = True
            .NumberFormat = "#,##0.00"
        End With
    End If
End Sub
"Дайте людям рыбы, и вы накормите их на весь день; научите их ловить рыбу - и вы накормите их на всю жизнь"
"Большое спасибо" - Z261597841314, R208907249777, U447361470499
VictorM вне форума Ответить с цитированием
Старый 11.03.2011, 09:30   #10
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Код в модуль листа:
Код:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Cells.Count > 1 Then Exit Sub
    If Not Intersect(Target, Range("A2:C4")) Is Nothing Then
        If Target.Value = 3 Then
        Target.NumberFormat = "#,##0.00"
        Else
        Target.NumberFormat = "General"
        End If
    End If
End Sub
Отслеживается область A2:C4
Сюда же можете и другие условия добавить, с использованием Select Case например, или просто If Target.Value ... Then добавить.
webmoney: E265281470651 Z422237915069 R418926282008

Последний раз редактировалось Hugo121; 11.03.2011 в 09:32.
Hugo121 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
КАК ПЕРЕДЕЛАТЬ ФОРМАТ mp4 В ФОРМАТ 3gp,MPEG4 kamalruslan Софт 4 20.08.2015 16:16
MS WORD. Формат текста и таблиц kaa1977 Общие вопросы Delphi 2 13.07.2010 12:56
формат текста строк в listbox skalt12 Общие вопросы Delphi 8 30.06.2010 09:02
+ и - в формуле lubov09 Microsoft Office Excel 11 31.10.2009 18:18
Формат текста в формуле Vertana Microsoft Office Excel 6 27.07.2009 18:52