2017-01-24 2 views
-1

Im dummy в VBA, и мне нужна помощь. Функция концентрации: «начало и конец текста», в моем случае я не могу его использовать.Как генерировать текст из Excel?

У меня есть файл Excel с столбцами A, B, C и D. В строке 1 указаны значения 1, 2, 4 и 5, на линии 2 имеют значения L, M, N, О.

enter image description here

Я хочу кнопку в колонке Е в каждой строке. Нажатие этой кнопки вызывает функцию, которая генерирует текст ведьму можно скопировать в буфер обмена и вставить в somewere текст

Если я нажму кнопку в строке 1, текст будет:

Lorem ipsum 1, sir 2 
dolor 4 amed 5 

Если я нажимаю кнопку в строке 2, текст будет:

Lorem ipsum L, sir M 
dolor N amed O 
+0

Вам нужна кнопка? Почему бы не использовать формулу? Какую формулу вы попробовали? – BruceWayne

+0

Выход должен иметь несколько строк. Когда я использовал '= CONCAT (A1;" "; A2; CHAR (10); A2;" "; C2)' output имеет двойную кавычку (") в начале и в конце –

ответ

0

Вы можете написать макрос для вывода строки текста, аналогичный:

.formula=" Lorem ipsum " & Cells(i,1) & ", sir " & Cells(i,2) & '... 

Вы хотите активировать при нажатии аналогично:

Private Sub ClickAndText(ByVal Target As Excel.Range) 

Dim i as integer 
i = ActiveCell.Row 

If Target.Address = "E"& i Then 

    Range("F"&i).Formula=" Lorem ipsum " & Cells(i,1) & ", sir " & Cells(i,2) & '... 
    Range("F"&i).Copy 

End If 
End Sub 
+0

Вы можете отказаться от кнопки и просто добавить формулу в столбец E, и она появится. Вы можете даже сделать if-строку в ячейке, чтобы вы не увидели пустое пространство = if (isblank (A1), «Lorem ipsum» & A1 & «, sir» & B1 & ..., ""). – Cyril