Число, которое нужно скопировать из ячейки с тем же числовым форматом и отобразить его как метку для фигуры без каких-либо изменений в числовом формате

#vba #excel #excel-2010

#vba #excel #excel-2010

Вопрос:

У меня есть ячейка в Excel, которая содержит значение, скажем, 100000. Теперь я хочу, чтобы это значение имело запятые между ними, чтобы представлять тысячи и миллионы, т. Е. 100 000. Я могу сделать это, изменив числовой формат в главном меню. Теперь я хочу, чтобы это значение было скопировано из этой ячейки и вставлено как метка для фигуры. Когда я делаю это, запятые исчезают, показывая мне только цифры. Я хочу, чтобы это происходило через VBA, но этого не происходит в самом Excel.

Есть ли у кого-нибудь правдоподобное решение для этого?

Ответ №1:

В объекте range используйте свойство Text, например:

 Sheet1.Shapes(1).TextFrame.Characters.Text = Range("A1").Text
  

Комментарии:

1. Да, это нормально. Но я хочу сохранить числовой формат, который присутствует в ячейке. Например, в ячейке A1 у меня есть 10 000 долларов (валюта), и я хочу, чтобы в тексте фигуры были как $, так и запятые. Это то, чего я не в состоянии сделать.

2. хм … в моем Excel (2010) все работает нормально — скопируйте значение ячейки с форматом. Вы уверены, что у вас есть диапазон («A1»). Текст вместо диапазона («A1»).Значение?

3. Большое спасибо, я использовал значение вместо текста. это работает нормально. спасибо. 🙂