excel表格子标题作为列

excel表格子标题作为列,excel,spreadsheet,heading,Excel,Spreadsheet,Heading,我对这类挑战完全陌生,不确定是否有任何可用的东西(甚至不确定我必须搜索什么基础) 在下面的excel工作表图像中,列“A”在两处有标题(行号2,3和9,10)。实际的excel工作表有6000多行和太多这样的子标题(如果是小文件,我可以手动操作..但超过6000行) 挑战:-我想用“Make”值填充E列,用子标题中的“Model”填充F列。我可以编写任何规则或宏来填充这些列吗?有人能帮我吗?谢谢你的帮助 或以下 问候 Kiran如果只想在Excel中执行此操作,可以使用以下命令。这假设 “

我对这类挑战完全陌生,不确定是否有任何可用的东西(甚至不确定我必须搜索什么基础)

在下面的excel工作表图像中,列“A”在两处有标题(行号2,3和9,10)。实际的excel工作表有6000多行和太多这样的子标题(如果是小文件,我可以手动操作..但超过6000行)

挑战:-我想用“Make”值填充E列,用子标题中的“Model”填充F列。我可以编写任何规则或宏来填充这些列吗?有人能帮我吗?谢谢你的帮助

或以下

问候


Kiran

如果只想在Excel中执行此操作,可以使用以下命令。这假设

  • “序号”的所有标题均相同
  • 更改替换子句以匹配Make和Model的文本,例如我使用了
    “Model:”
    “Make:”
    的精确间距来匹配电子表格并替换为“”
  • 在单元格G5中输入
    =IF(ISNUMBER(A5)、IF(iError(查找(“模型”,A3,1))、MAX($G$1:G4)、MAX($G$1:G4)+1),“”)

    在单元格F5中,输入
    =SUBSTITUTE(如果(ISNUMBER(A5)),INDIRECT(地址(匹配($G5,$G:$G,0)-2,列(A1),1)),“”),“Model:”,“”)

    在单元格E5中,输入=
    =替换(IF(ISNUMBER(A5)、间接(地址(匹配($G5,$G:$G,0)-3,第(A1)列,1))、“”)、“Make:”、“”)

    然后将E5:G5中的公式向下拖动到需要的位置。但是,我建议只使用一次,因为公式在大范围内更新会很慢。此外,如果标题不同步,则VBA是前进的方向


    非常感谢osknows提供了这一出色的解决方案。它工作得很好。但是有点小问题。对于某些“品牌,型号”,客户信息跨越两页,同一“品牌,型号”的“S.NO”存在两到三次。是否有任何方法可以删除中间的列标题。我的意思是“如果预览行的值是number,而当前行的值是”S.NO“删除该记录。因此,在这种情况下,您提供的解决方案效果良好。很抱歉,我的问题中没有涉及这个问题。但这同样是美妙的SOLUTION@Bujji-我不确定我是否理解,你能给出一个问题的示例图像吗?谢谢@osknows,很抱歉没有详细解释。我更新了我的问题并添加了第二张图片。如果你看第八行,它有重复的行标题(S.NO,客户名称…),但这两行也属于同一型号和品牌(通用汽车和庞蒂亚克)。因此,对于同一品牌和型号的汽车,我们可以有多个S.NO。事实上,我甚至不需要这些子标题(它们是否存在并不重要)。为了让事情更简单,我可以删除它们。但是有没有自动删除它们的方法?情况是“如果预览行的值是number,而当前行的值是”S.NO“delete that record”@Bujji-我已经更新了G5在这种情况下工作的公式。只需复制下来