Страницы: 1
RSS
формат ячейки - автоформат или функция
 
Господа гуру Excel-я прошу помощи из-за своей безграмотности.  
 
есть таблица определённого типа, в которую заносятся данные из другого листа этой же таблицы. функция =Base!  
вопрос: какая должна быть функция, чтобы в импортированном тексте из другого листа    
было выделенно первое слово и был перенос на другую строчку этой же ячейки.  
 
типа в ячейке А1  
вместо    
 
монитор LG 1920*1080 ips блаблабла    
 
чтобы было    
 
монитор  
LG 1920*1080 ips блаблабла  
 
думаю выглядеть это должно так:  
=Base!B2 (если(1-е слово - то жирным и перенос строки ))  
 
только правильного синтаксиса не знаю..
 
Если в ячейке функция, то отформатировать часть текста никак не возможно.  
Можно такую ячейку обработать макросом, но формулу придется заменить значением. Работает с выделенным диапазоном:  
 
Sub bb()  
Dim c As Range, i&  
For Each c In Selection  
   i = InStr(c, " ")  
   If i Then  
       c = Replace(c, " ", vbLf, , 1)  
       c.Characters(1, i - 1).Font.Bold = True  
   End If  
Next  
End Sub
 
ого это для моего понимания сильно, сейчас попробую что нибудь понять.  
1. функция как таковая отменяется  
2. как засунуть значение на ячеёку ?  
3. а если ячеек 1000штук в кажду. нужно отдельно засовывать значение ?
 
спасибо попробовал получилось, (применил этот код как макрос(выполнить) к заполненной ячейке.  
только вот нужно чтобы заполнялась эта ячейка с другого листа этой книги и вот так делала.  
(на другом листе книги записи постоянно меняются
 
Можете функцией подтянуть данные с другого листа. Хотя, наверно, проще скопировать-вставить. Это тоже можно сделать макросом. Приложите файл-пример и покажите, откуда и куда переносятся данные.
 
примерно такой, там немного сложнее но смысл этот  
 
на листе ценник есть 2 варианта левый - который получается визульно, правый который хочется получить...
 
смысл в том что приходится печатать ценники вот с такого файла иногда их бывает по 500штук за заход  
файл похож на вот этот только на 1000 ценников  
данные берутся из листа номенклатура (предварительно из базы копипаст в этот файл)  
потом отправляются на печать.  
Конечно в идеале чтобы было динамическое количество (от заполненных строк)  
сейчас хотя-бы название товара выделить...
 
Большое спасибо за решение, в принципе можно пользоваться этим:  
 
Sub bb()  
Columns("A:F").Select  
Dim c As Range, i&  
For Each c In Selection  
i = InStr(c, " ")  
If i Then  
c = Replace(c, " ", vbLf, , 1)  
c.Characters(1, i - 1).Font.Bold = True  
End If  
Next  
End Sub  
 
каждый раз применяя этот макрос на моём рабочем файле.
Страницы: 1
Читают тему
Наверх