Я пытаюсь переместить сводную таблицу в VSTO и не удается вообще.Моя логика заключалась в том, чтобы найти диапазон сводной таблицы, вырезать его и вставить в новый диапазон, где я уверен, что на листе нет данных.
public static void MovePivotTable(string sheetName, PivotTable pivotTable, int newX, int newY, int width, int height)
{
try
{
Worksheet worksheet = GetOrCreateWorksheet(sheetName);
Range topLeft = (Range)worksheet.Cells[newX, newY];
Range bottomRight = (Range)worksheet.Cells[newX + width, newY + height];
Range newRange = worksheet.get_Range(topLeft, bottomRight);
pivotTable.TableRange1.Cut(Missing.Value);
newRange.PasteSpecial(XlPasteType.xlPasteAll, XlPasteSpecialOperation.xlPasteSpecialOperationNone,
Missing.Value, Missing.Value);
return;
}
catch (Exception)
{
}
finally
{
}
}
Однако я всегда получаю исключение.Либо: - PasteSpecial не удалось.- Что-то вроде того, что невозможно изменить сводную таблицу.
Кто-нибудь когда-нибудь делал это?Могут ли они подтвердить, что это действительно возможно или нет?Любой пример кода?
Большое спасибо, Шон