如何跨表提取自己想要的数据
如何提取excel中不同列的数据?
如何提取excel中不同列的数据?
1、首先打开excel表格,在单元格中输入两列数据,需要将这两列数据进行比对相同数据。;
2、然后在C1单元格中输入公式:VLOOKUP(B1,A:A,1,0),意思是比对B1单元格中A列中是否有相同数据。;
3、点击回车,即可将公式的计算结果显示出来,可以看到C1中显示的是B1在A列中找到的相同数据。;
4、将公式向下填充,即可发现C列中显示出的数字即为有相同数据的,显示“#N/A”的为没有找到匹配数据的。;
5、将C1-C4中的数据进行复制并粘贴成数值,即可完成相同数据的提取操作。
异地社保转入宁波需要什么手续?
一)转移手续是需要在转入地社保局申请开具,然后凭本人身份证,养老保险本本材料在调出社保局申请即可. 是这样的,医疗保险并不支持异地转移,且只能在购买地消费使用和享受报销待遇.也就是其它除种只能在本地使用. 在统筹区域内可以随便办理转移关系,而在非统筹区域,转移社保中,只能转移养老保险,且只能往户口所在地社保局转入,因此,如果说你的户口是当地,是可以办理转移的. 对于跨省市转移,其手续需要分别向两地社保局提出申请,且只能转移个人帐户部分,不能将个人账户和统筹账户一起取走,做好心理准备.
有什么软件可以随意提取Excel表格中的数据?
推荐你使用Java进行开发,通过Apache POI开源项目实现对Excel表格的数据读取:
下载POI4.1.0:
并将jar包导入项目工程。
实现代码:
public class ExcelOperate {
public static void main(String[] args) throws Exception {
File file new File(ExcelDemo.xls)
String[][] result getData(file, 1)
int rowLength result.length
for(int i0iltrowLengthi ) {
for(int j0jltresult[i].lengthj ) {
(result[i][j] tt)
}
()
}
}
/**
* 读取Excel的内容,第一维数组存储的是一行中格列的值,二维数组存储的是多少个行
* @param file 读取数据的源Excel
* @param ignoreRows 读取数据忽略的行数,比喻行头不需要读入 忽略的行数为1
* @return 读出的Excel中数据的内容
* @throws FileNotFoundException
* @throws IOException
*/
public static String[][] getData(File file, int ignoreRows)
throws FileNotFoundException, IOException {
ListltString[]gt result new ArrayListltString[]gt()
int rowSize 0
BufferedInputStream in new BufferedInputStream(new FileInputStream(
file))
// 打开HSSFWorkbook
POIFSFileSystem fs new POIFSFileSystem(in)
HSSFWorkbook wb new HSSFWorkbook(fs)
HSSFCell cell null
for (int sheetIndex 0 sheetIndex lt () sheetIndex ) {
HSSFSheet st (sheetIndex)
// 第一行为标题,不取
for (int rowIndex ignoreRows rowIndex lt () rowIndex ) {
HSSFRow row (rowIndex)
if (row null) {
continue
}
int tempRowSize () 1
if (tempRowSize gt rowSize) {
rowSize tempRowSize
}
String[] values new String[rowSize]
(values, )
boolean hasValue false
for (short columnIndex 0 columnIndex lt () columnIndex ) {
String value
cell (columnIndex)
if (cell ! null) {
// 注意:一定要设成这个,否则可能会出现乱码
(HSSFCell.ENCODING_UTF_16)
switch (()) {
case HSSFCell.CELL_TYPE_STRING:
value ()
break
case HSSFCell.CELL_TYPE_NUMERIC:
if ((cell)) {
Date date ()
if (date ! null) {
value new SimpleDateFormat(yyyy-MM-dd)
.format(date)
} else {
value
}
} else {
value new DecimalFormat(0).format(cell
.getNumericCellValue())
}
break
case HSSFCell.CELL_TYPE_FORMULA:
// 导入时如果为公式生成的数据则无值
if (!().equals()) {
value ()
} else {
value ()
}
break
case HSSFCell.CELL_TYPE_BLANK:
break
case HSSFCell.CELL_TYPE_ERROR:
value
break
case HSSFCell.CELL_TYPE_BOOLEAN:
value (() true ? Y
: N)
break
default:
value
}
}
if (columnIndex 0 ampamp ().equals()) {
break
}
values[columnIndex] rightTrim(value)
hasValue true
}
if (hasValue) {
(values)
}
}
}
()
String[][] returnArray new String[()][rowSize]
for (int i 0 i lt returnArray.length i ) {
returnArray[i] (String[]) (i)
}
return returnArray
}
/**
* 去掉字符串右边的空格
* @param str 要处理的字符串
* @return 处理后的字符串
*/
public static String rightTrim(String str) {
if (str null) {
return
}
int length str.length()
for (int i length - 1 i gt 0 i--) {
if ((i) ! 0x20) {
break
}
length--
}
return (0, length)
}
}