Вставить транспонированные данные в новую строку - PullRequest
1 голос
/ 19 марта 2020

Я пытаюсь создать форму в Excel на листе 1 (называемую формой), в которой данные, скопированные с листа 1 (форма), вставляются в лист 2 (данные).

Форма вертикальная; однако данные горизонтальны.

Поэтому я использую PasteSpecial.

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

Sub Submit()  
    '  
    ' Submit Macro  
    '  

    '  
    Range("C2:C14").Select  
    Selection.Copy  
    Sheets("Data").Select  
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _  
      :=False, Transpose:=True  
    Range("A3").Select  
    Sheets("Form").Select  
    Application.CutCopyMode = False  
    Selection.ClearContents  
    Range("C2").Select  
End Sub

1 Ответ

1 голос
/ 19 марта 2020

Работает ли это?

Sub Submit()

Sheets("Form").Range("C2:C14").Copy
Sheets("Data").Range("A" & Rows.Count).End(xlUp)(2).PasteSpecial Paste:=xlPasteValues, Transpose:=True

End Sub

Вы можете прочитать this , чтобы узнать, как избежать использования Select / Activate.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...