Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/14.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文件有50多列和5000行,所以我认为这可能是一个宏的工作。关于如何实现这一点有什么想法吗 ╔═════════╦══════╦═════╦═══════════╦═══════╗ ║ Summary ║ Name ║ Age ║ County ║ ZIP ║ ╠═════════╬══════╬═════╬════════

我试图在工作表中创建一个单元格,用于汇总行中的所有数据。我找到了一种将所有字段合并到第一列的方法,但我还需要它包含标题名,并且需要忽略空白字段。()

我的excel文件有50多列和5000行,所以我认为这可能是一个宏的工作。关于如何实现这一点有什么想法吗

╔═════════╦══════╦═════╦═══════════╦═══════╗ ║ Summary ║ Name ║ Age ║ County ║ ZIP ║ ╠═════════╬══════╬═════╬═══════════╬═══════╣ ║ ║ Sue ║ ║ Snohomish ║ 98144 ║ ║ ║ Bob ║ 36 ║ Pierce ║ 98335 ║ ║ ║ Pat ║ 32 ║ Spokane ║ ║ ║ ║ Jim ║ 40 ║ King ║ 98101 ║ ╚═════════╩══════╩═════╩═══════════╩═══════╝ Cell A2 would have the following contents: Name: Sue County: Snohomish ZIP: 98144 Cell A3: Name: Bob Age: 36 County: Pierce ZIP 98335 Cell A4: Name: Pat Age: 32 County: Spokane ╔═════════╦══════╦═════╦═══════════╦═══════╗ ║ 总结║ 名称║ 年龄║ 县║ 拉链║ ╠═════════╬══════╬═════╬═══════════╬═══════╣ ║ ║ 控告║ ║ 势利的║ 98144║ ║ ║ 上下快速移动║ 36║ 刺穿║ 98335║ ║ ║ 拍打║ 32║ 斯波坎║ ║ ║ ║ 吉姆║ 40║ 国王║ 98101║ ╚═════════╩══════╩═════╩═══════════╩═══════╝ 单元格A2将包含以下内容: 姓名:苏 县:斯诺霍米什 邮政编码:98144 单元格A3: 姓名:鲍勃 年龄:36 县:皮尔斯 邮政编码98335 单元格A4: 姓名:帕特 年龄:32 县:斯波坎
您需要的是一个公式:

  • 使用IF函数测试每个信息单元是否都有数据(我假设您将始终拥有该名称)
  • 如果单元格有,则将回车符(CHAR(10))的ASCII码的字符表示形式与该单元格的数据连接起来
  • 请确保为公式单元格启用换行,否则显示的文本不会显示换行符
  • 结果公式如下所示

     ="Name: " &B1&
       IF(C1="","",CHAR(10)&"Age: "&C1)&
       IF(D1="","",CHAR(10)&"County: "&D1)&
       IF(E1="","",CHAR(10)&"Zip: "&E1)
    

    您可以使用LEN函数将数据(年龄等)按相同数量进行缩进。

    您绑定了什么,遇到了什么问题?谢谢。这就成功了。我把它放远一点,让它动态地抓取标题名。下面是获取前8列数据并在第一个单元格中汇总它们的公式=如果(B2=“”,“,$B$1&”:“&B2&CHAR(10))&IF(C2=“”,”,$C$1&“:”&C2&CHAR(10))&IF(D2=“”,“,$D$1&“:”&D2&CHAR(10))&IF(E2=“”,“,$E$1&”:”&E2&CHAR&CHAR(10))&IF(F2=“”,$F$1&“:”&F2&CHAR&CHAR(10))&I10))&IF(G2=“”,$G=”,$G$1&$G$1&&CHAR&CHAR)(10))&I10))&I10)),如果(H2=“”,$H2=“”,$H:$1&&I10))!很高兴我能帮忙。