Необходимо заменить "1" если он пишется в ячейкe на кружок (нарисован рядом с таблицей в отдельной ячейке), 2 на 2 кружка тоже нарисованы в другой ячейке и так далее до 8, если ячейка пуста то ничего делать не надо. В книге 10 листов это необходимо сделать на 2 листах А и Б.
В файле 1000 столбов и много строк поэтому формула не подойдет.
Спасибо.
Здравствуйте. Подскажите пожалуйста макрос:
Необходимо заменить "1" если он пишется в ячейкe на кружок (нарисован рядом с таблицей в отдельной ячейке), 2 на 2 кружка тоже нарисованы в другой ячейке и так далее до 8, если ячейка пуста то ничего делать не надо. В книге 10 листов это необходимо сделать на 2 листах А и Б.
В файле 1000 столбов и много строк поэтому формула не подойдет.
Спасибо но не подойдет в ячейке цыфра шрифт12, а кружок только контур не закрашенный должен быть взят из вставки-фигуры. И он вписывается в эту ячейку. Два кружка они тоже зарание подготовленны и вписываются в такую же ячейку. И так далее до 8 кружков.
Спасибо но не подойдет в ячейке цыфра шрифт12, а кружок только контур не закрашенный должен быть взят из вставки-фигуры. И он вписывается в эту ячейку. Два кружка они тоже зарание подготовленны и вписываются в такую же ячейку. И так далее до 8 кружков.Clero39
Сообщение отредактировал Clero39 - Пятница, 18.09.2015, 20:08
вы бы приложили свой файл (в соответствии с правилами), что есть и каким вы хотите видеть конечный результат как вариант [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) Dim n&: n = Val(Target) Application.EnableEvents = False If n Then Target = String$(n, ChrW(&H20DD)) Else Target.ClearContents Application.EnableEvents = True End Sub
[/vba]
UPD вариант 2 [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) Dim s$, n&: n = Val(Target) Application.EnableEvents = False If n Then For n = 1 To n: s = s & ChrW(&H245F + n): Next: Target = s Else Target.ClearContents Application.EnableEvents = True End Sub
[/vba]
вы бы приложили свой файл (в соответствии с правилами), что есть и каким вы хотите видеть конечный результат как вариант [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) Dim n&: n = Val(Target) Application.EnableEvents = False If n Then Target = String$(n, ChrW(&H20DD)) Else Target.ClearContents Application.EnableEvents = True End Sub
[/vba]
UPD вариант 2 [vba]
Код
Private Sub Worksheet_Change(ByVal Target As Range) Dim s$, n&: n = Val(Target) Application.EnableEvents = False If n Then For n = 1 To n: s = s & ChrW(&H245F + n): Next: Target = s Else Target.ClearContents Application.EnableEvents = True End Sub
вы заведомо создаете себе "геморрой"... будет работать для цифр от 1 до 3, т.к. не понял как должны выглядеть кружочки для 4-8 (ну, сделаете по аналогии) [p.s.]не понял для чего вам кружки (справа от таблицы) на каждой строке, если достаточно всего по одной ячейке-примере?...[/p.s.]
вы заведомо создаете себе "геморрой"... будет работать для цифр от 1 до 3, т.к. не понял как должны выглядеть кружочки для 4-8 (ну, сделаете по аналогии) [p.s.]не понял для чего вам кружки (справа от таблицы) на каждой строке, если достаточно всего по одной ячейке-примере?...[/p.s.]KSV
Кружки с боку это я брал нужный кружок копировал и вставлял в соответствующую ячейку. Эта таблица нужна по работе. Принцип построения кружков как в картах. Я думал может это реализовать как копирование заданной ячейки с кружками и вставка в нужную ячейку с цыфрой заменяя ее. Спасибо за помощь.
Кружки с боку это я брал нужный кружок копировал и вставлял в соответствующую ячейку. Эта таблица нужна по работе. Принцип построения кружков как в картах. Я думал может это реализовать как копирование заданной ячейки с кружками и вставка в нужную ячейку с цыфрой заменяя ее. Спасибо за помощь.Clero39
Посмотрел. Я в этом деле лузер, даже не поял как по аналогии добавить 4, 5 и т.д. Но помогите довести проект до ума. Файл присоеденил, данные таблица "А" получает из таблицы "Б" в оригинале у них другие названия. Данными являются как цифры от 1 до 8 так и сочетание от 1к до 8к, заменить их надо соответствующим количеством кружков ( в конце я табличку поправил). Самостоятельно я в таблицу "А" значения не ввожу. Заранее благодарю.
Посмотрел. Я в этом деле лузер, даже не поял как по аналогии добавить 4, 5 и т.д. Но помогите довести проект до ума. Файл присоеденил, данные таблица "А" получает из таблицы "Б" в оригинале у них другие названия. Данными являются как цифры от 1 до 8 так и сочетание от 1к до 8к, заменить их надо соответствующим количеством кружков ( в конце я табличку поправил). Самостоятельно я в таблицу "А" значения не ввожу. Заранее благодарю.Clero39
Здорово. А как реолизовать, что бы при открытии таблицы "А"(в ней уже будут данные из таблицы "Б") значения заменяться автоматом. Сейсас приходиться перебивать значения вручную или активировать ячейку и нажать "ввод", чтобы произошла замена. Пример в первых ячейках. Если можно расскажи с помощью какой команды копируется именно тот обьект с заданным количеством кружков. Перенес программу в рабочий фаил, не хочет там работать? Спасибо.
Здорово. А как реолизовать, что бы при открытии таблицы "А"(в ней уже будут данные из таблицы "Б") значения заменяться автоматом. Сейсас приходиться перебивать значения вручную или активировать ячейку и нажать "ввод", чтобы произошла замена. Пример в первых ячейках. Если можно расскажи с помощью какой команды копируется именно тот обьект с заданным количеством кружков. Перенес программу в рабочий фаил, не хочет там работать? Спасибо.Clero39
Люди добрые! А может кто нибудь подскажет макрос, чтобы заменить сочетание букв "ффф" на знак Ø после ввода текста в ячейку. Например: "Проволока алюминиевая сварочная свАМг6 ффф3" менялось бы на "Проволока алюминиевая сварочная свАМг6 Ø3". [moder]Читаем Правила форума, создаём свою тему, эта тема закрыта[/moder]
Люди добрые! А может кто нибудь подскажет макрос, чтобы заменить сочетание букв "ффф" на знак Ø после ввода текста в ячейку. Например: "Проволока алюминиевая сварочная свАМг6 ффф3" менялось бы на "Проволока алюминиевая сварочная свАМг6 Ø3". [moder]Читаем Правила форума, создаём свою тему, эта тема закрыта[/moder]Evgen74
Сообщение отредактировал Pelena - Вторник, 10.11.2015, 14:48