excel用函数合并多个单元格内容,且用分隔符隔开

excel用函数合并多个单元格内容,且用分隔符隔开,第1张

准备工具/材料:装有windows 10的电脑一台,Microsoft Office 家庭和学生版 2016 excel软件。

1、首先,在打开的excel表格中输入几组数据,需要合并成一个单元格,用逗号分隔。

2、在c1单元格中输入合并公式:=A1&","&B1,需要在英文输入法中输入双引号。

3、单击Enter可合并需要合并的数据,并向数据中添加逗号。

4、然后点击C1单元格的公式向下填充复制,即可批量将数据进行合并和添加逗号了。

*** 作步骤:

首先来看一下原始数据:

A列是姓名,有重复的项目。B列是数量。要求求得A列每个人的数量合计。

首先,复制A列数据,粘贴到C列。

选中C列数据,选择数据-删除重复项。

选择以当前选定区域排序,然后点击删除重复项。

因为C列包含数据表头“姓名”,因此选择数据包含标题。

点击确定按钮后将删除C列数据的重复项,留下不重复结果如下图:

双击D2,输入公式=SUMIF(A$2:A$7,C2,B$2:B$7),回车并下拉填充公式就得到了想要的结果。

8

SUMIF函数的用法简介:

SUMIF函数的语法是这样的:=SUMIF(条件区域,条件,求和数据区域)

举例来说=SUMIF(A$2:A$7,C2,B$2:B$7),就是求A$2:A$7区域里等于C2单元格的值对应B$2:B$7数据的合计。

分类: 电脑/网络 >> 程序设计 >> 其他编程语言

问题描述:

我已经把方法写出来了,但是不会主函数,求高手帮忙填下

程序如下:

#include <stdioh>

#include <stdlibh>

typedef struct Node{

int data;

struct Node next;

}Lnode,LinkList;

LinkList CreatLinlList()

{

LinkList L;

Lnode s,r;

int x;

int flag;

L=r=NULL;

scanf("%d",&x);

while(x!=flag)

{

s=(Lnode )malloc (sizeof (Lnode));

s->data = x;

if(L==NULL)

L=s;

else

r->next=s;

r=s;

scanf("%d",&x);

}

if(r!=NULL)

r->next=NULL;

return L;

}

void deleteLinkList( LinkList L)

{

Lnode p,q,r;/p头指针 q指针 r尾指针/

p=L->next;/p指向第一个结点/

if(p==NULL)

return;

while(p->next)

{

q=p;

while(q->next)

if (q->next->data==p->data)

{

r=q->next;

q->next=r->next;

free(r);

}

else

q=q->next;

}

p=p->next;

}

LinkList merge(LinkList A,LinkList B)

{

LinkList C;

Lnode p,q,s,r;

p=A->next;

q=B->next;

C=A;

C->next=r=NULL;

free(B);

while(p&&q)

{

if(p->data<q->data)

{

s=p;

p=p->next;

}

else

{

s=p;

q=q->next;

}

r->next=s;

r=s;

}

if(p==NULL)

p=q;

while(p)

{

s=p;

p=p->next;

r->next=s;

r=s;

}

}

void PrintList(Lnodeh)

{Lnodep;

p=h->next;

if(p==NULL)

printf("ist is NULL!\n");

else

{printf("\t");

do

{printf("\t%c",p->data);

p=p->next;

}

while(p!=NULL);

printf("\t\n");

}

}

main()

{

}

解析:

LinkList a, b, c;

printf("building a\n");

a = CreatLinlList();

printf("building b\n");

b = CreatLinlList();

printf("a is\n");

PrintList(a);

printf("b is\n");

PrintList(b);

c=merge(a,b)

printf("the merge is\n");

PrintList(c);

deleteLinkList(a);

deleteLinkList(b);

deleteLinkList(c);

应该把CreatLinlList()改为

LinkList CreatLinlList()

{

LinkList L;

Lnode s,r;

int x;

int len; int flag;

L=r=NULL;

printf("input length:");

scanf("%d",&len);

scanf("%d",&x);

while(len-- != 0) while(x!=flag)

{

s=(Lnode )malloc (sizeof (Lnode));

s->data = x;

if(L==NULL)

L=s;

else

r->next=s;

r=s;

scanf("%d",&x);

}

if(r!=NULL)

r->next=NULL;

return L;

}

其实,多表合一方法有很多,这里我只介绍两种最快捷的方法!

将下图一月、二月、三月3张表数据合并汇总到一季度表中。

方法非常简单,选择C2:E5区域,输入SUM(''!C2), 按Ctrl+Enter。

3个月的数据瞬间合并完毕

反思一下,如果只合并1月和2月两个表的数据呢?

很简单!在C2单元格输入SUM('1月:2月'!C2),即可

再问:合并1月和3月的两个表格,函数应该怎么写呢?

=SUM('1月'!C2,'3月'!C2)

下面把表格改一下,看看另一种合并方式

三个表格分公司A、分公司B、分公司C这三列,进行汇总。

在B2单元格输入 =INDIRECT(B$1“!b”ROW()) 即可

NDIRECT(B$1“!b“ROW())文本引用,即引用分公司AB2单元格数据。

注意:INDIRECT()参数不加引号情况下只做地址引用,只返回单元格地址。

希望大家可以通过以上几种合并效果,可以举一反三,做出更有效的函数应用。

没有Excel2016的伙伴,可以私聊回复“2016”获取!

也可回复“考勤表”、“仓管系统”、"分享"等关键字,获取更多免费资源

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/12181161.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-21
下一篇2023-05-21

发表评论

登录后才能评论

评论列表(0条)

    保存