4

Я копирую отдельные ячейки из Excel и вставляю их в SQL. Каждый раз, когда я делаю это, возврат каретки автоматически добавляется в копию.

Репро:

Введите 123 в любой ячейке в Excel 2007.Нажмите на другую ячейку. Теперь щелкните правой кнопкой мыши на ячейке, которую вы только что ввели. Выберите копию. Откройте блокнот и вставьте. Обратите внимание, что возврат каретки также копируется, если в ячейке нет возврата каретки.

1 ответ1

2

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

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

Если у вас есть много ячеек для копирования, вы можете создать простой скрипт VBA, чтобы поместить содержимое выбранной ячейки в буфер обмена (затем назначить его горячей клавише).

Редактировать:

Пример макроса:

Sub CopyActiveCell()
    Dim objData As MSForms.DataObject
    Set objData = New MSForms.DataObject
    objData.SetText ActiveCell.Value
    objData.PutInClipboard
End Sub

Обратите внимание, что для этого вам нужно добавить ссылку на Microsoft Forms 2.0 Object Library (через Сервис | Ссылки). Если вы копируете много значений, вы можете сделать это еще проще, добавив создание подпрограммы в модуле Sheet1 как

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

вместо

Sub CopyActiveCell()

Это автоматически скопирует значение ячейки всякий раз, когда вы щелкаете один раз по ячейке, чтобы выбрать ее.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .