Копирование и вставка между книгами Excel - PullRequest
0 голосов
/ 05 июня 2018

У меня есть макрос, который копирует и вставляет из одного документа Excel в другой.По какой-то причине у меня возникла ошибка при использовании pastespecial сразу после копирования и вставки из другого исходного документа.Так что в качестве обходного пути я просто вставил нормально, а затем скопировал его снова, а затем использовал pastespecial.Моя проблема в том, что при запуске этого макроса по какой-то причине он добавляет пробел в конце чисел, превращая их в текст.Это означает, что мои графики не распознают их.

Workbooks.Open (fileLocation & "/" & fileName & fileType)
Worksheets(sourceWorksheet).Select
rowInUse = 46           'Add data row and name of sheet being imported into
mySheet = "sheet2"
pasteLocation = "D5"
lastColumn = ActiveSheet.Cells(rowInUse,     Columns.Count).End(xlToLeft).Column
Range(Cells(rowInUse, firstColumn), Cells(rowInUse, lastColumn)).Copy
ActiveWorkbook.Close SaveChanges:=False
Worksheets(mySheet).Select
Range(tempPasteLocation).Select
ActiveSheet.Paste
    Sheets(mySheet).Select
    Range(tempPasteLocation, Cells(tempRow, tempColumn + lastColumn)).Select
    Selection.Copy
    Range(pasteLocation).Select
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=True
Range(tempPasteLocation, Cells(tempRow, tempColumn + lastColumn)).Select
Selection.ClearContents

Кто-нибудь знает, почему это происходит или как это исправить?

Спасибо

1 Ответ

0 голосов
/ 05 июня 2018

Выполните прямую передачу значений вместо Copy, PasteSpecial, Values.

Replace,

Sheets(mySheet).Select
Range(tempPasteLocation, Cells(tempRow, tempColumn + lastColumn)).Select
Selection.Copy
Range(pasteLocation).Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
    False, Transpose:=True

При этом

with workSheets(mySheet)
    with .Range(tempPasteLocation, .Cells(tempRow, tempColumn + lastColumn))
        .Range(pasteLocation).resize(.rows.count, .columns.count) = .value2
    end with
end with
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...