excel怎么选出相同列名的数据,比如把列名为持仓量的放在一起,成交量的放在一起,数据有很多列

2024-05-19 02:14

1. excel怎么选出相同列名的数据,比如把列名为持仓量的放在一起,成交量的放在一起,数据有很多列

单击“数据”-“排序”,在“排序”对话框中单击“选项”,再在“排序选项”对话框中选中“按行排序”,确定即可。

excel怎么选出相同列名的数据,比如把列名为持仓量的放在一起,成交量的放在一起,数据有很多列

2. 如何下载股票历史成交数据到Excel或txt

以华中智能股票软件为例:(以Think pad X13 锐龙版笔记本电脑,Windows 10 操作为例)首先切换到要下载数据的股票K线形态,按“F1”进入“日线某某股票历史成交”,点击鼠标右键->数据导出->导出所有数据->在“请选择导出的类型”中选择excel或txt 补充资料: 如何获取所有股票历史数据: 如果要对股市进行分析,首先就要获取所有股票的历史数据,只有通过股票的历史数据,我们才能分析出股市的规律。 (以Think pad X13 锐龙版笔记本电脑,Windows 10 操作为例) 一、工具/原料 1、EXCEL2007或者以上版本,不能使用WPS 2、电脑1g内存1核处理器及以上配置 3、拥有较强逻辑分析能力以及少量智慧及以上的大脑一颗 方法/步骤: 第一步,获取股票代码,复制其中一部分到第一个工作表A4到A127,然后通过程序把每一个代码写入到不同的工作表A2位置,并对该工作表以该股票代码命名。程序如下: Sub 工作表命名() For i = 4 To 127 Sheets(i).Range("a2") = "'" & Sheets(1).Range("a" & i) Next i For i = 4 To Sheets.Count Sheets(i).Name = Sheets(i).Range("a2").Value Next End Sub 第二步,获取股票历史数据。代码如下: Private Function GetSource(sURL As String) As String     Dim oXHTTP As Object     Set oXHTTP = CreateObject("MSXML2.XMLHTTP")     oXHTTP.Open "GET", sURL, False     oXHTTP.Send     GetSource = oXHTTP.responsetext     Set oXHTTP = Nothing End Function Sub 历史数据()     Dim objXML As Object     Dim txtContent As String     Dim i As Integer     Dim strCode As String     Dim gp As String     Dim kaishihang     Dim arr, arr1, arr2, arr3, arr4, arr5, arr6, arr7, arr8, arr9, arr10, arr11     On Error Resume Next EndRow = Range("a65536").End(xlUp).Row startRow = 4 If startRow     Range(Cells(startRow, 1), Cells(EndRow, 11)).Value = "" Else     Exit Sub End If      Set objXML = CreateObject("Microsoft.XMLHTTP")     gp = [A2]      For h = 1 To 4     For m = 1 To 4      kaishihang = [A65535].End(xlUp).Row      nian = Replace(Str(Year(Now) + 1 - h), " ", "")     jidu = Replace(Str(4 + 1 - m), " ", "")     With objXML         .Open "GET", "http://quotes.money.163.com/trade/lsjyj_" + gp + ".html?year=" + nian + "&season=" + jidu + "", False         .Send         If objXML.Status = 200 Then             txtContent = .responsetext             arr = Split(txtContent, "'>")     For i = 1 To UBound(arr)           arr1 = Split(arr(i), "    Cells(i + kaishihang, 1) = Right(Left(arr1(0), 10), 10)     arr2 = Split(arr1(1), Chr(60))     Cells(i + kaishihang, 2) = Mid(arr2(0), InStr(arr2(0), ">") + 1)     arr3 = Split(arr1(2), Chr(60))     Cells(i + kaishihang, 3) = Mid(arr3(0), InStr(arr3(0), ">") + 1)     arr4 = Split(arr1(3), Chr(60))     Cells(i + kaishihang, 4) = Mid(arr4(0), InStr(arr4(0), ">") + 1)     arr5 = Split(arr1(4), Chr(60))     Cells(i + kaishihang, 5) = Mid(arr5(0), InStr(arr5(0), ">") + 1)     arr6 = Split(arr1(5), Chr(60))     Cells(i + kaishihang, 6) = Mid(arr6(0), InStr(arr6(0), ">") + 1)     arr7 = Split(arr1(6), Chr(60))     Cells(i + kaishihang, 7) = Mid(arr7(0), InStr(arr7(0), ">") + 1)     arr8 = Split(arr1(7), Chr(60))     Cells(i + kaishihang, 8) = Mid(arr8(0), InStr(arr8(0), ">") + 1)     arr9 = Split(arr1(8), Chr(60))     Cells(i + kaishihang, 9) = Mid(arr9(0), InStr(arr9(0), ">") + 1)     arr10 = Split(arr1(9), Chr(60))     Cells(i + kaishihang, 10) = Mid(arr10(0), InStr(arr10(0), ">") + 1)     arr11 = Split(arr1(10), Chr(60))     Cells(i + kaishihang, 11) = Mid(arr11(0), InStr(arr11(0), ">") + 1)    Next i    End If   End With    Next m    Next h Set objXML = Nothing End Sub 第三步,获取上证历史数据,并获取所有股票的历史数据。程序如下: Sub 所有股票历史数据获取() Application.ScreenUpdating = False     Dim s As String, gp As String, nian As String, jidu As String, s1 As String     Dim arr, arr1, arr2, arr3, arr4, arr5, arr6, arr7, arr8, arr9     Dim i, h As Long     Dim kaishihang     Dim LastRow As Long, r As Long    On Error Resume Next EndRow = Sheet2.Range("a65536").End(xlUp).Row startRow = 4 If startRow     Sheet2.Range(Sheet2.Cells(startRow, 1), Sheet2.Cells(EndRow, 9)).Value = "" Else     Exit Sub End If       For h = 1 To 5     For m = 1 To 4      kaishihang = Sheet2.[A65535].End(xlUp).Row     nian = Replace(Str(Year(Now) + 1 - h), " ", "")     jidu = Replace(Str(4 + 1 - m), " ", "")     s1 = "http://quotes.money.163.com/trade/lsjysj_zhishu_000001.html?year=" + nian + "&season=" + jidu + ""     s = GetSource(s1)   arr = Split(s, "'>")     For i = 1 To UBound(arr)           arr1 = Split(arr(i), "    Sheet2.Cells(i + kaishihang, 1) = Right(Left(arr1(0), 4), 4) & "-" & Right(Left(arr1(0), 6), 2) & "-" & Right(Left(arr1(0), 10), 2)     arr2 = Split(arr1(1), Chr(60))     Sheet2.Cells(i + kaishihang, 2) = Mid(arr2(0), InStr(arr2(0), ">") + 1)     arr3 = Split(arr1(2), Chr(60))     Sheet2.Cells(i + kaishihang, 3) = Mid(arr3(0), InStr(arr3(0), ">") + 1)     arr4 = Split(arr1(3), Chr(60))     Sheet2.Cells(i + kaishihang, 4) = Mid(arr4(0), InStr(arr4(0), ">") + 1)     arr5 = Split(arr1(4), Chr(60))     Sheet2.Cells(i + kaishihang, 5) = Mid(arr5(0), InStr(arr5(0), ">") + 1)     arr6 = Split(arr1(5), Chr(60))     Sheet2.Cells(i + kaishihang, 6) = Mid(arr6(0), InStr(arr6(0), ">") + 1)     arr7 = Split(arr1(6), Chr(60))     Sheet2.Cells(i + kaishihang, 7) = Mid(arr7(0), InStr(arr7(0), ">") + 1)     arr8 = Split(arr1(7), Chr(60))     Sheet2.Cells(i + kaishihang, 8) = Mid(arr8(0), InStr(arr8(0), ">") + 1)     arr9 = Split(arr1(8), Chr(60))     Sheet2.Cells(i + kaishihang, 9) = Mid(arr9(0), InStr(arr9(0), ">") + 1)    Next i    Next m Next h Application.ScreenUpdating = True n = Worksheets.Count For i = 4 To n   Worksheets(i).Activate   历史数据 Next End Sub 第四步,保存工作簿,并对该工作簿命名为1,然后复制该工作簿27份,把所有股票代码写入每一个工作簿第一个工作表的A3到A127列。然后根据第一步对工作簿内的工作表命名,并在每一个工作表A2单元格内写入股票代码。 第五步,把这些工作簿存放到炒股文件夹下的数据库文件下。然后在炒股文件夹下新建一个工作簿,命名为“一键更新表格”,写入如下代码: Sub 所有股票历史数据更新() Dim wb As Workbook  For i = 1 To 27    Set wb = Workbooks.Open(ThisWorkbook.Path & "\数据库\" & i & "".xlsb"")     Application.Run ""'"" & wb.Path & ""\"" & i & "".xlsb'!所有股票历史数据获取"" wb.Save wb.Close  Next i End sub 当启动这一段代码以后,程序会自动一个一个的打开对应的工作簿然后获取里面所有股票的历史数据,存放在对应的工作表当中。 第六步,对相应的程序添加按钮,这样,我们在启动对应程序时,只需要点一下对应的按钮就可以实现了。这样,我们通过多个工作簿就实现了获取所有股票历史数据的方法。而后面,我们只需要通过获取对应股票每一天的历史数据,我们就能够在任意一天很快速的能够拥有所有股票的历史数据了。 注意事项 1、在后续需要对这些数据进行分析,里面会加入很多计算,所以启动所有历史数据更新时,我们应该要关闭自动更新。 2、因为历史数据很大,所以这里只获取四年的数据,想要获取更多数据,可以更改程序里面 “For h = 1 To 5”的那个5即可。 3、历史数据的获取需要较长的时间,要提前做好准备。 4、如果你想要弄清楚用EXCEL建立炒股系统的整套方法,请看后续内容。"

3. 请问如何将excle中的七张表中日期相同的时候的数据剔除出来?每张表的第一列是日期,第二列是收盘价

=SUM(IF((Sheet1!A1:Sheet1!A1000<=DATE(2007,1,31)*(Sheet1!A1:Sheet1!A1000>=DATE(2007,1,1))),(Sheet1!B1:Sheet1!B1000)))


试验一下这个
年你自己改一下

请问如何将excle中的七张表中日期相同的时候的数据剔除出来?每张表的第一列是日期,第二列是收盘价

4. 如何用EXCEL表中的数据制作出股市行情走势图

我用的是Excel 2007,不确定以前版本是否有股价图,菜单位置和以前版本完全不同,请自行寻找。

1.复制数据在Excel中粘贴
2.把“日”和“期”之间的空格删除
3.选择“分列”功能,分隔符号选择空格,将数据分为5列。
4.选中数据,插入股价图中第二种“开盘-盘高-盘低-收盘图”。
5.分别调整涨跌柱线和上下影线的颜色。

5. excel里怎么创建一个股价图(开盘—盘高—盘低—收盘图)图表

  方法一:用成交量-开盘-盘高-盘低-收盘图:
  1、这种方法要求股价数据必须按“成交量-开盘-盘高-盘低-收盘”的次序排列,各类数据占一列,不能前后颠倒,如图所示。

  2、选择数据区域的某个单元格,在功能区中选择“插入”选项卡,在“图表”组中单击“其他图表→股价图”,子图表类型选第四种“成交量-开盘-盘高-盘低-收盘图”。

  3、要降低柱形高度,可调整主坐标轴的刻度最大值。另外,还可将图例放置于图表底部并改变水平轴的文字对齐方式,使图表显得更美观。

  方法二:利用垂直线
  1、选择前五列A1:E29区域,在功能区中选择“插入”选项卡,在“图表”组中单击“其他图表→股价图”,子图表类型选第二种“开盘-盘高-盘低-收盘图”。

  2、添加“成交量”系列:在“数据”选项卡中单击“选择数据”,弹出“选择数据源”对话框,单击“添加”。将“系列名称”设置为“成交量”字样所在的F1单元格,将“系列值”设置为“成交量”数据所在的F2:F29区域。

  3、单击两次确定,图表变为下图所示:

  4、选择“图表工具-布局”选项卡,在“当前所选内容”组中选择“系列‘成交量’”,然后单击“设置所选内容格式”按钮,在弹出的“设置数据系列格式”对话框中将“系列绘制在”选项设置为“次坐标轴”。

  5、关闭对话框,此时图表变为下图所示:

  6、在“图表工具-布局”选项卡的“分析”组中单击“折线→垂直线”,让“成交量”系列显示垂直线。单击选择图表中的“垂直线”。

  7、再次单击“设置所选内容格式”,在“设置垂直线格式”对话框中,先选择“线条颜色”选项,设置为“实线”,然后选择“线型”,将“宽度”设置为一个适当的值,本例为“4磅”,如图。

  8、关闭对话框,“成交量”系列即显示为柱状。

  

excel里怎么创建一个股价图(开盘—盘高—盘低—收盘图)图表

6. 现有一个(涉及到多日股票开盘价收盘价的)公式,我想把txt格式的数据插入其中,并描出图形。用什么软件?

EXCEL即可决策这个问题。

7. 如何用excel获取网页上的股票数据,并按照日期制成表格

可以通过Excel的获取外部数据功能来实现,具体操作如下:
1、选择你要获取数据的网.站(不是所有的网.页都能获取到你想.要数据哦),复制完整网.址备用
2、打开Excel,单击数据选项卡,选择获.取外部数据—自网.站按钮,会打开一个新建Web查询对话框。
3、输入刚才复制的网.址,会打开相应网.页。
4、根据提示,单击你需要的数据表前的黄色小键头,当其变为绿色对勾,代表选中状态。
5、单击导入按钮,选择数据在工作表中的存放位置,确定即可。
6、使用时,右击数据存放区域,刷新,成功后,即为最新数据。

如何用excel获取网页上的股票数据,并按照日期制成表格

8. 使用excel求出 每个月中收盘价最高的价格和日期,每个月最低价格时的价格和日期.

楼主的题目,出得有点大,解决方案:
1)增加一列辅助列比如H列,在H6输入公式:
=YEAR(A6)&TEXT(MONTH(A6),"00")
下拉到所有数据结束,这列列出了所有交易的年月,以后所有的计算将依据该列的值。
2)使用列,列出所有的年月作为标志,在I6输入公式:
=INDEX(H:H,SMALL(IF(COUNTIF(OFFSET(H$5,,,ROW(H$2:H$33)),H$6:H$35)=1,ROW(H$6:H$35)),ROW(1:1)))
数组公式,Ctrl+Shift+Enter三键结束输入。下拉到出错,会列出数据中所有独立的年月
3)使用列列出对应列年月区间中的最大收盘价。在J6中输入公式:
=LARGE(OFFSET(E$5,MATCH(I6,H$6:H$35,0),,COUNTIF(H$6:H$35,I6)),1)
下拉到与列齐
4)使用列列出对应的区间中最大收盘价的日期。在K6中输入公式:
=INDEX(OFFSET(A$5,MATCH(I6,H$6:H$35,0),,COUNTIF(H$6:H$35,I6)),MATCH(J6,OFFSET(E$5,MATCH(I6,H$6:H$35,0),,COUNTIF(H$6:H$35,I6)),0))
下拉到与列齐
5)使用列列出对应列年月区间中的最小收盘价。在L6中输入公式:
=SMALL(OFFSET(E$5,MATCH(I6,H$6:H$35,0),,COUNTIF(H$6:H$35,I6)),1)
下拉到与列齐
6)使用列列出对应的区间中最小收盘价的日期。在K6中输入公式:
=INDEX(OFFSET(A$5,MATCH(I6,H$6:H$35,0),,COUNTIF(H$6:H$35,I6)),MATCH(L6,OFFSET(E$5,MATCH(I6,H$6:H$35,0),,COUNTIF(H$6:H$35,I6)),0))
效果如图:

你可以下载附件看看具体的情况,有问题可以追问