Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba 宏按钮,用于在Excel中添加行(使用下面行中的公式),同时维护标题_Vba_Excel - Fatal编程技术网

Vba 宏按钮,用于在Excel中添加行(使用下面行中的公式),同时维护标题

Vba 宏按钮,用于在Excel中添加行(使用下面行中的公式),同时维护标题,vba,excel,Vba,Excel,我正在尝试将一个工作脚本从Google Sheets复制到Excel中。目标是复制活动工作表的第二行,并将格式、数据验证和公式粘贴到上面的新行中。这是为了在标题下方的第2行中放置一个新的(使用公式和数据验证格式化) 这是谷歌脚本 // global var ss = SpreadsheetApp.getActive(); function addFirstRow() { var firstRow = 2; var sh = ss.getActiveSheet(); va

我正在尝试将一个工作脚本从Google Sheets复制到Excel中。目标是复制活动工作表的第二行,并将格式、数据验证和公式粘贴到上面的新行中。这是为了在标题下方的第2行中放置一个新的(使用公式和数据验证格式化)

这是谷歌脚本

// global
var ss = SpreadsheetApp.getActive();

function addFirstRow() {
    var firstRow = 2;
    var sh = ss.getActiveSheet();
    var lCol = sh.getLastColumn();
    var range = sh.getRange(firstRow, 1, 1, lCol);
    var formulas = range.getFormulas();
    sh.insertRowsBefore(firstRow, 1);
    var newRange = sh.getRange(firstRow, 1, 1, lCol);
    newRange = sh.getRange(firstRow, 1, 1, lCol);
    newRange.setFormulas(formulas);
} 
这里有一段谷歌工作表的视频

截图
所以你只需要这个,还是我不太明白

   Sub Test()
    Rows("2:2").Insert Shift:=xlDown
    Rows("3:3").Copy
    Rows("2:2").PasteSpecial xlPasteAll
    Application.CutCopyMode = false
   End Sub

参考此链接,我认为它解决了相同的问题,并且将有助于宏看起来与此类似。但是,我不知道如何编程来复制第2行并在其位置插入一个空行,从而将所有行向下移动<代码>子复制下一行()带范围(单元格(ActiveCell.Row,2),单元格(ActiveCell.Row,16)).Offset(1).插入shift:=xlDown.Copy.Offset(1).粘贴特殊粘贴:=xlPasteFormulasAndNumberFormats.Offset(1).粘贴特殊xlPasteFormats应用程序.CutCopyMode=带单元格的假结束(ActiveCell.Row+1,2)=“=”&单元格(ActiveCell.Row,2).地址和“+1”结束子项这很接近。如何在忽略内容的同时插入包含格式、数据验证和公式的行。即,插入的行应为空。
xlpasteFormulas和numberFormats
而不是
xlPasteAll
如果正确,则可以替换参数“xlPasteAll”“,你需要什么。如果需要多个参数,可以根据需要每次重新键入该行。在示例
行(“2:2”).PasteSpecial XLPasteFormulas和NumberFormats
和下一行
行(“2:2”).PasteSpecial xlPasteValidation