Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/23.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
Excel 如何";“转让”;是否将行格式设置为新添加的行?_Excel_Vba - Fatal编程技术网

Excel 如何";“转让”;是否将行格式设置为新添加的行?

Excel 如何";“转让”;是否将行格式设置为新添加的行?,excel,vba,Excel,Vba,我正在做一个“价格估算”Excel VBA项目 页面的基本布局为: (顶部)账单信息、日期、公司信息,。。。[第1-13行]-固定 (中)-->BOM表在excel的CELLS()函数中有一个OK。单元格可以有值、公式和格式。这可以复制。欢迎使用SO!一个好问题。。。向上投票!关于你的问题。可以复制上一个单元格中的公式。如果你上传一个样本,我会转发给你。一个好的起点是使用宏记录器,将第14行上的公式复制并粘贴到其余行。停止录音,你就会得到代码。关于第二个问题,你得到了一个额外的行,因为你正在“

我正在做一个“价格估算”Excel VBA项目

页面的基本布局为:

  • (顶部)账单信息、日期、公司信息,。。。[第1-13行]-固定

  • (中)-->BOM表在excel的CELLS()函数中有一个OK。单元格可以有值、公式和格式。这可以复制。欢迎使用SO!一个好问题。。。向上投票!关于你的问题。可以复制上一个单元格中的公式。如果你上传一个样本,我会转发给你。一个好的起点是使用宏记录器,将第14行上的公式复制并粘贴到其余行。停止录音,你就会得到代码。关于第二个问题,你得到了一个额外的行,因为你正在“推”第15行,所以你应该减少一行,以免得到额外的行。
    Private Sub cmdAddBOM_Click()
    
        Dim wkbCrntWorkBook As Workbook
        Dim wkbSourceBook As Workbook
        Dim rngSourceRange As Range
        Dim rngDestination As Range
    
        Dim iAreaCount As Integer 'row count variable
    
        Set wkbCrntWorkBook = ActiveWorkbook
        With Application.FileDialog(msoFileDialogOpen)
            .Filters.Clear
            .Filters.Add "Excel 2007-13", "*.xlsx; *.xlsm; *.xlsa"
            .AllowMultiSelect = False
            .Show
            If .SelectedItems.Count > 0 Then
                Workbooks.Open .SelectedItems(1)
                Set wkbSourceBook = ActiveWorkbook
    
                Set rngSourceRange = Application.InputBox(prompt:="Select source range", Title:="Source Range", Default:="A1", Type:=8)
    
                wkbCrntWorkBook.Activate
                rngSourceRange.ClearFormats
                iAreaCount = rngSourceRange.Rows.Count
                '   MsgBox "The selection contains " & iAreaCount & " rows."
    
                Range("A14").EntireRow.Offset(0).Resize(iAreaCount).Insert Shift:=xlDown
    
                Set rngDestination = Application.InputBox(prompt:="Select destination cell", Title:="Select Destination", Default:="A14", Type:=8)
    
                rngSourceRange.Copy rngDestination
    
                wkbSourceBook.Close True
    
            End If
        End With
    
    End Sub
    
    Range("A14").EntireRow.Offset(0).Resize(iAreaCount).Insert Shift:=xlDown
    
    Range("A14").EntireRow.Offset(1).Resize(iAreaCount).Insert Shift:=xlDown