用EXCEL表格设置一个函数,从几个数字中挑选出某几个数字,使其和为某个设定的数字

将第2个/替换1个特殊的符号

A1:A5分别输入1,2,5,11,20

取中间几个数字的函数 几个数字怎么取中间值取中间几个数字的函数 几个数字怎么取中间值


取中间几个数字的函数 几个数字怎么取中间值


C1输入

=SUMPRODUCT(A1:A5,B1:B5)回车

D1输入

=IF(ROW(A1)>SUM($B$1:$B$5),"",INDEX(A:A,SMALL(IF($B$1:$B$5=1,ROW($1:$5),4^8),ROW(A1))))

数组公式,输入公式后先不要回车,按Ctrl+Shift+Enter结束计算。再向下填充至D5

菜单栏——工具——规划求解——出现“规划求解参数”对话框——设置目标单元格:$C$1——值为:16——可变单元格:$B$1:$B$5——约束:

添加:单元格引用位置:$B$1:$B$5,下拉选“<=”——约束值:1——确定

添加:单元格引用位置:$B$1:$B$5,下拉选“int”——确定

添加:单元格引用位置:$B$1:$B$5,下拉这段代码可以实现你要的效果选“>=”——约束值:0——确定

自动生成:

$B$1:$B$5<=1

$B$1:$B$5=整数

$B$1:$B$5>=0

,点“求解”——确定。

D列出现的数值就是你要的数字。

思路:设置变量$1=1,$2=2,$3=5,$4=11,$5=20;如果存在for a in $1,$2,$3,$4,$5 do $b=16-$a ;if 存在 $6 in ($1,$2,$3,$4,$5)那么打印$a,$b

如何在EXCEL的一单元格的一串数中提取两个数字

统一公式很难,用三个不同的公式

=MID(123456789253,9,2)

9是从起始位置到该字符的位置!

2是字符的个数

知道位置的吗?如果是,则

string str = "1234qq";=mid(a1,9,2)

如何从一个字符串中取取得其中的数字?

定位第二个“;”用 FIND(";",A1,X1+1)=X2

如何从一个字符串中取取得其中的数字的方法。

如下参考:

2.点击选择C1单元格,然后在公式栏输入函数:=RIGHT(A1;6).这是使用正确的函数,即从A1单元格获取数据,从右侧获取6位。

3.按回车键后,从细胞中提取细胞A1的数量。

嗯..我刚才想到一个...string可以拆分成char[]数组你应该知道吧...然后将每一位都尝试转化为int类型,成功就是数字,不成功就是其他的喽~~~

希望帮到你~

看三楼人给的你代码,我怕他耽误了你~所以给你写了个Demo

你看看吧~不懂可以追问

int i;

foreach (char in str)

{if (int.TryParse(.ToString(),out i))//尝试转换,若成功则是数字,若不成功则证明不是

{label1.Text += + " | ";

}}

呵呵,不是三楼了~一就到楼下了~~~现在应该是二楼~ se | 二级

嗯..我刚才想到一个...string可以拆分成char[]数组你应该知道吧...然后将每一位都尝试转化为int类型,成功就是数字,不成功就是其他的喽~~~

希望帮到你~

看三楼人给的你代码,我怕他耽误了你~所以给你写了个Demo

你看看吧~不懂可以追问

int i;

foreach (char in str)

{if (int.TryParse(.ToString(),out i))//尝试转换,若成功则是数字,若不成功则证明不是

{label1.Text += + " | ";

}}

如果以数字开头,就这样取:

Regex.Match("12345abc", "^d+").Value

如果不确定数字出现在什么位置:

Regex.Match("12345abc", "d+").Value

这个会匹配个出现的连续多个(>1)数字。

这样吧,你先分割这个字符串,然后把数字找出来,在合成新的字符串。

string s = "123h4";

char[] chars = s.ToCharArray();

string sum = "";

foreach (char ch in chars)

{if (char.IsDigit(ch))

{sum = sum + ch;

}}

Console.WriteLine(sum);

Console.ReadKey();

在控制台加这段代码就可以了

我经过调试的 效果还行,正则表达式更好,我忘了怎么写了

黑简单哈,比如:

static void Main(string[] args)

{//字符串

var num = from number in str

where char.IsNumber(number)

select number;

//打印

foreach (var in num)

{Console.WriteLine();

}}

using System.Collections.Generic;

using System.Linq;

using System.Text;

using System.Text.RegularExpressions;

List l = new List();

MatchCollection matchs = Regex.Matches(str, @"d+");

foreach (Match m in matchs)

{try

{l.Add(long.Parse(m.Groups[0].Value));

}catch (Exception e)

{Console.WriteLine("出错了:" + e.Message);

}}

l.ForEach(u => Console.Write("{0} ", u));

Console.ReadKey();

string str = "1234qq22cc11";

string pattern = "[0-9]";

string output = "";

System.Text.RegularExpressions.Regex reg = new System.Text.RegularExpressions.Regex(pattern);

System.Text.RegularExpressions.MatchCollection matches = reg.Matches(str);

foreach (System.Text.RegularExpressions.Match match in matches)

{output设100在A1,110在B1 += match.Value + "n";

}MessageBox.Show(output);

i=0

string numStr

while(true){

if(str[i] == "数字"){

numStr+=str[i]

}else if(numStr!=""){

//取得一个数字

}i++

}

EXCEL表格怎么取第几位到第几位之间的数?

var str = "1234qq1q=right(源数据格,提取的字符数)2w23ac1";

你好,用mid函数就可以了。设123456789在A1单元格,个3表示从字符串中截取的起始位置,第二个3表示截取的字符个数。

公式:=mid(a1,3,3)OK。

MID字符串函数,作用是从一个字符串中截取出指定数量的字符

text被截取的字符

start_num从左起第几位开始截取(用数字表达)

num_chars从左起向右截取的长度是多少(用数字表达)

b1=mid(a1,3,3)

EXCEL表怎么去掉前几位后后几位数字,把中间的数字筛选出来

left ,right ,mid len四个函数应该可以解决你的问题

用MID函数

MID(text, start_num, num_chars)

语法

MID(text,start_num,num_chars)

Text 是包含要提取字符的文本字符串。

Start_num 是文本中要提取的个字符的位置。文本中个字符的 start_num 为 1,以此类推。

Num_chars 指定希望 MID 从文本中返回字符的个数。

用if和mid函数组合应该能达到要求。

首先你要保证所有的数字位数都相同,而且年份所在的位置也相同

然后在数字右边的单元格粘贴下面的公式

=if(value(mid(a1,7,4))<1985,"小于1985","大于等于1985")

拖动填充以后直接在这一列筛选就可以了

MID(text,start_num,num_chars)

text 原始字符串

start_num 从哪一位开始取

num_chars 取多长的数据

excel中的许多号,想只取中间生日那几个数字,删掉前6位和后4位

比如提取 分钟

如果号码在a列

你可以在b1输入:

=MID(A1,7,IF(LEN(A1)=18,8,6))

然后往下拉

比如号在A列

=MID(A1,7,8)

下拉填充

如果证件都是同样位数的话

你可以使用分列功能来实现!

如果有新老证件号的话就用IF结合MID函数来实现!

有15位和18位Console.WriteLine();两种

所以公式应该这么写 =MID(A1,7,IF(LEN(A1)=18,8,6))

Excel 中用什么函数能提取字符串中的数字

excel函数里提取2个符号中间的值如下所示:

可选用以下方法提取:

1、给出数字的起始位置和长度。示例公式:=--mid(a1,5,3)

公式结果为提取A1单元格中从第5位开始的3个数字。

2、提取某特定字符串后的数字。示例公式:=-lookup(0,-mid(a1,find("ABC",a1)//筛选数字+LEN("ABC"),row(1:99)))

公式结果为提取A1单元格中字符串ABC之后的数字。

3、数字在一侧其他则中文字符组成。示例公式:数字在前,公式=left(a1,2len(a1)-lenb(a1));数字在后,公式=right(a1,2len(a1)-lenb(a1))

4、没有给出任何条件,只要求将单元格中的数字提出。通用公式=-lookup(0,-mid(a1,min(find(row(1:10)-1,a1&1/17)),row(1:99)))

按组合键ctrl+shift+enter结束公式。

如何在EXCEL中去掉一组数据中间的4位数字?

E321-012008输入到A1中,在需要转换结=mid("123456789",3,3)果的单元格中输入=LEFT(A1,1)&RIGHT(A1,8)

向下公式

如4.点击上图中的小滑块,通过填充功能向下拉出单元格的数量。果在A1

在B1

=MID(A1,1,1)&MID(A1,6,8)

若A1=E321-012008

B1=LEFT(A1,1)&MID(A1,6,LEN(A1))

如何通过excel公式在两个整数之间找出所有的中间的整数 包括 起始和结束的两个数字。

string str = "1234qq";

这个问题很复杂,因为涉及到运算的顺序问题,因为要先乘除再加减。在A2中输入函数

=IF(($A$1+COLUMN())<=$B$1,$A$1+COLUMN(),"") 向右拖即可.

在A2中输入函数

=IF(($A$1+COLUMN())<=$B$1,$A$1+COLUMN(),"") 向右拖即可.

=RANDBETWEEN(100,110)