Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Макрос создающий пользовательский формат с подстановкой данных через переменную, Макрос создающий пользовательский формат с подстановкой данных через переменную
 
Дмитрий(The_Prist) Щербаков, Ваш вариант тоже имеет место быть, но я хотел получать запись формата в виде 0 "км/ч", как я и писал в первом сообщении.
В любом случае признателен Вам за отклик и предложенный вариант!
Макрос создающий пользовательский формат с подстановкой данных через переменную, Макрос создающий пользовательский формат с подстановкой данных через переменную
 
Действительно! Исправил и заработало !
Огромное спасибо всем участникам!!!
Макрос создающий пользовательский формат с подстановкой данных через переменную, Макрос создающий пользовательский формат с подстановкой данных через переменную
 
Sanja, а почему у меня выдает ошибку? Только я данный код разместил в модуле
Код
Sub CreateCustomFormat()
'вставка единиц измерения в формат ячейки
    
    Dim textPart$
    Dim targetCell As Range
    Dim Chanel As Long
    
    
    ' 1. Получаем текст из ячейки A1
    textPart = Range("A1").Value
    For Chanel = 1 To 2
    Set targetCell = Cells(Chanel + 1, 1)
            
    Target.NumberFormat = "?" & """" & textPart & """"
    Next Chanel
    End Sub 
Макрос создающий пользовательский формат с подстановкой данных через переменную, Макрос создающий пользовательский формат с подстановкой данных через переменную
 
Дмитрий(The_Prist) Щербаков, благодарю за вариант! Но было бы интересно реализовать через переменную.

Нашел вот такой вариант
targetCell.NumberFormat = """" & textPart & ": "" #,##0.00"
но он выдает результат не в том порядке как мне надо, а как переписать не знаю.
формат должен получиться типа такого: 0 "textPart".
Изменено: Денис Акулов - 23.03.2026 15:28:07
Макрос создающий пользовательский формат с подстановкой данных через переменную, Макрос создающий пользовательский формат с подстановкой данных через переменную
 
Цитата
написал:
Target.NumberFormat = "?" & """" & textPart & """"
Sanja, данный вариант выдает ошибку "runtime error 424" object required.

Про макрорекордер знаю и использую). Как уже писал единиц измерения может быть множестово вариантов поэтому и хочу реализовать через переменную
Изменено: Денис Акулов - 23.03.2026 16:26:46
Макрос создающий пользовательский формат с подстановкой данных через переменную, Макрос создающий пользовательский формат с подстановкой данных через переменную
 
Приветствую!
Прошу помочь с макросом.
Необходимо к числовому значению ячейки добавить единицы измерения (могут принимать разное значение) с сохранением возможности работать с данными ячейки как с числом.
Попробовал создавать пользовательский формат с переменной textPart:
targetCell.NumberFormat = " 0 " & "" & textPart & ""

но в случае когда "textPart" принимает значение со знаком деления (например км/ч) возникает ошибка "Нельзя установить свойство NumberFormat класса Range".
Как я понимаю, итогом выполнения макроса должен быть новый формат вида 0 "км/ч"
Изменено: Денис Акулов - 23.03.2026 11:22:58
Как определить количество знаков после запятой для использования его в формулах
 
Максим В.,
Цитата
написал:
=ОКРВВЕРХ(A1;--ПРАВСИМВ(ЯЧЕЙКА("формат";A1)))
этот вариант работает, но опять же после каждого обновления данных необходимо либо через F9 делать обновления. Может через макрос можно получить это значение?
Как определить количество знаков после запятой для использования его в формулах
 
DAB,
Цитата
написал:
Или Вы имеете в виду, что будете менять формат одной и той же ячейки?
Совершенно верно, формат ячейки может меняться, т.е. он всегда числовой, но количество знаков после запятой меняется
Как определить количество знаков после запятой для использования его в формулах
 
Максим В.,
Цитата
написал:
Формат это то что вы видите, но не то что содержится в ячейке.
Я копирую в ячейку данные с форматированием 0,00, в данный момент после копирования в ячейке А1 наблюдаю "1,00" и при этом =ДЛСТР(A1)-ПОИСК(",";A1) выдает ошибку
Как определить количество знаков после запятой для использования его в формулах
 
DAB,
Цитата
написал:
=CELL("format",A1)
необходимо после каждого ввода данных обновлять значения. Может через макрос можно как то решить эту задачу
Как определить количество знаков после запятой для использования его в формулах
 
Максим В., ввожу 1, формат ячейки 0,00
Как определить количество знаков после запятой для использования его в формулах
 
Максим В., не работает. При вводе числа 1,00 выдает ошибку. Попробовал =ДЛСТР(A1) выдает ответ 1, =ПОИСК(",";A1) - ошибка
Как определить количество знаков после запятой для использования его в формулах
 
Добрый день.
Подскажите как решить задачу :
В ячейку А1 копируются данные в числовом формате. Количество знаков после запятой может быть от нуля до 4.

Определить число десятичных знаков в формате ячейки А1 и на его основании округлять значения в ячейках B2 и С2, т.е.
если формат ячейки А1 "0,0" - число десятичных знаков - 1, в ячейки В2 и С2 вставляем формулу =ОКРУГЛВВЕРХ(B2;1) и =ОКРУГЛВВЕРХ(С2;1) соответственно;
если А1 "0,00" - число десятичных знаков - 2...
Синтаксис макроса по выставке формулы, Прошу помощи в написании макроса вставляющего формулу по склейке данных
 
Artem1977, Отлично работает! Благодарю!!!
Синтаксис макроса по выставке формулы, Прошу помощи в написании макроса вставляющего формулу по склейке данных
 
Sanja, С примером пока сложно, так как он ещё в разработке. Artem1977, переменная page это номер листа (от1 до 100). Например открывается лист1 - page=1, запускаю макрос и хочу получить в ячейке b1 формулу типа ="протокол"&af29....&[РЗ.xlsx]лист1!R10 &[РЗ.xlsx]лист1!R15
у меня не получается приклеить последнюю ссылку РЗ.xlsx]лист1!R15.
Синтаксис макроса по выставке формулы, Прошу помощи в написании макроса вставляющего формулу по склейке данных
 
Задача: есть исходный файл с данными испытаний приборов. На их основании необходимо создать файл протокол, каждый прибор на отдельном листе
Синтаксис макроса по выставке формулы, Прошу помощи в написании макроса вставляющего формулу по склейке данных
 
Sanja, как я уже писал, в итоге должна быть возможность отследить адреса данных, поэтому и делаю через вставку формулы
Синтаксис макроса по выставке формулы, Прошу помощи в написании макроса вставляющего формулу по склейке данных
 
Artem1977, с вашим вариантом excel выдает ошибку #имя?
Синтаксис макроса по выставке формулы, Прошу помощи в написании макроса вставляющего формулу по склейке данных
 
Мне нужно склеить данные, но с возможность отследить адреса данных, поэтому и делаю через вставку формулы
Синтаксис макроса по выставке формулы, Прошу помощи в написании макроса вставляющего формулу по склейке данных
 
Доброго времени суток! Прошу помочь разобраться с синтаксисом.
Нужен макрос вставляющий формулу по "склейке" данных из нескольких ячеек, адреса которых зависят от переменной "page"
[РЗ.xlsx]Лист1!R" & page * 5 + 5,
[РЗ.xlsx]Лист1!R" & page * 5 + 10
Пробовал таким образом:


Range("b1").Select
       ActiveCell.Formula = "= ""Протокол №"" &AF29 & "" дата калибровки "" & [РЗ.xlsx]Лист1!R" & page * 5 + 5 " & [РЗ.xlsx]Лист1!R" & page * 5 + 10


но выдает сообщение "Expected: end of statement
Изменено: Денис Акулов - 07.08.2023 14:34:30
Макрос-вставка формулы ссылки с переменным адресом,
 
Спасибо за вариант. Но он, как я понимаю, будет работать только с открытым файлом базы данных.
Путем проб и ошибок получил следующий вариант:
Range("Af1").Select
       ActiveCell.Formula = "='[Рабочие записи.xlsx]Лист1'!B" & Number
Макрос-вставка формулы ссылки с переменным адресом,
 
Доброго дня! Есть файл базы данных "Рабочие записи" и файл "протоколы" с множеством однотипных листов. Каждый лист протокола через номер листа связан ссылками с соответствующим диапазоном "Рабочих записей". При создании нового листа протокола приходиться корректировать ссылки.

Вопрос как с помощью макроса вставлять ссылки с уже вычисленным адресом?
По условию нужны именно формулы для возможности в последующем проверки.

Думаю должно быть что то в таком виде:
Range("A7").Select
   ActiveCell.FormulaR1C1 = "='[Рабочие записи.xlsx]Лист1'!R14C "номер листа протокола"
Range("B9").Select
   ActiveCell.FormulaR1C1 = "='[Рабочие записи.xlsx]Лист1'!R15C "номер листа протокола *20+1"
Где "номер листа протокола" - переменная берущая значения из ячейки на листе протокола, или ячейка с номером листа.
Заранее благодарен.
 
Изменено: Денис Акулов - 13.05.2023 08:16:10
Страницы: 1
Наверх