精華區beta Office 關於我們 聯絡資訊
※ [本文轉錄自 Stock 看板] 例如: http://0rz.tw/8b4Px 右鍵傳送至Excel 2003(有點想換2007,如果可以更方便的話!) 然後一個儲存格(現金流量表) 本期淨利 $ 26,900,099 $ 26,206,151 1.我要怎麼把他切成三個儲存格? 2.要怎麼只取前幾個位數呢? 我想要269億! 3.例如我只要2002的最近五年的損益表,只能一個一個開嗎? 應該有更快地方法讓他自己跑吧! 請教一下大家,謝謝!
JieJuen:1.資料剖析2.數值格式或Round3.VBA查詢 #18fQEgnS 6663 09/27 01:36
hitoo:1.可以切..但是要一個一個切..也不知道怎麼取數字的前幾位 09/27 01:47
> -------------------------------------------------------------------------- < 作者: JieJuen (David) 看板: Office : 推 JieJuen:1.資料剖析2.數值格式或Round3.VBA查詢 #18fQEgnS 6663 09/27 01:36 : → hitoo:1.可以切..但是要一個一個切..也不知道怎麼取數字的前幾位 09/27 01:47 您好, 首先我不太會用VBA,因此只能回答非VBA的部分~ 1. 對於一個表,只要 資料剖析/完成 即可,不需"一個一個切" 對於很多表,都放在同一欄,也可以只做一次 有個小地方要注意,如果是用web查詢,要保留RTF格式 2. 公式 =ROUND(B9/10^5,) 或 =INT(B9/10^5) 或 =IF(COUNT(B9),ROUND(B9/10^5,),B9&"") 數值格式要改的話 一定是三個0一起去掉 例如格式為 0, 就會去掉右三位數 (表中的百萬) 0,, 就去掉右六位數 (十億.. 沒有億) 3. 我不知如何用VBA資料剖析可使其自動分欄.. 錄好的碼切的位置似乎是固定的。 http://2y.drivehq.com/p/2002data.xls 開啟後 請在SHEET1資料剖析/完成 (如果已經試過就免了~) SHEET1為WEB查詢,巨集只是錄資料剖析的動作 2 3分別是公式與格式 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.47.34.190
hitoo:謝謝 09/28 11:55
> -------------------------------------------------------------------------- < 作者: chungyuandye (養花種魚數月亮賞星星) 看板: Office 標題: Re: [算表] 不知道大家都怎麼抓觀測站的數據? 時間: Sat Sep 27 22:40:06 2008 A欄放你要的股票代號, 2002, 1301... 最好抓到前一年就好,這一年的在另外抓~~ Sub Ptt() Dim Fn As Object Set Fn = Application.WorksheetFunction yearstart = 2000 yearend = 2007 tempvalue = 0 For i = 1 To 2 co_id = Cells(i, 1) For j = yearstart To yearend For k = 1 To 4 yearseason = j & "0" & k With ActiveSheet.QueryTables.Add(Connection:= _ "URL;http://mops.twse.com.tw/nas/t06sa18/" & yearseason & "/A02_" & co_id & "_" & yearseason & ".htm", _ Destination:=Range("B1")) .Name = "PTT" .FieldNames = True .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True .RefreshOnFileOpen = False .BackgroundQuery = True .RefreshStyle = xlInsertDeleteCells .SavePassword = False .SaveData = True .AdjustColumnWidth = True .RefreshPeriod = 0 .WebSelectionType = xlSpecifiedTables .WebFormatting = xlWebFormattingNone .WebTables = "4" .WebPreFormattedTextToColumns = True .WebConsecutiveDelimitersAsOne = True .WebSingleBlockTextImport = False .WebDisableDateRecognition = False .WebDisableRedirections = False .Refresh BackgroundQuery:=False End With For l = 1 To 16 teststring = Fn.Trim(Cells(30 + l, 2)) test = Mid(teststring, 1, 4) If test = "本期淨利" Then temp = Cells(30 + l, 3) tempvalue = tempvalue + 1 Sheets("sheet2").Cells(tempvalue, 1) = co_id Sheets("sheet2").Cells(tempvalue, 2) = yearseason Sheets("sheet2").Cells(tempvalue, 3) = temp Exit For Else temp = "" End If Next ActiveSheet.Range("B:H").Delete Next Next Next End Sub
hitoo:謝謝 09/28 11:54
JieJuen:推 09/28 19:01
JieJuen:嗯 不過與原po需求不太相同 09/29 01:19
> -------------------------------------------------------------------------- < 作者: hitoo (◎☑) 看板: Office ※ 引述《chungyuandye (養花種魚數月亮賞星星)》之銘言: http://pphitoo.pixnet.net/album/photo/101245349 我想要自動抓下來的東西是像這樣, 而且要保留RFT格式, 這樣有可能辦到嗎?
JieJuen:單純這步 錄巨集即可.WebFormatting = xlWebFormattingRTF 09/29 01:30
> -------------------------------------------------------------------------- < 後續提問 抓下來後 每個儲存格裡面的文字數字間隔並不相同, 文章中檔案 排列卻相當整齊 請問是如何辦到的呢? : : 有個小地方要注意,如果是用web查詢,要保留RTF格式 第一個有可能的地方是 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 第二個就是資料那個框附近有兩個打勾之處~ 要勾外面那一個~ RTF是什麼 怎麼設定? 編輯查詢時 右上角選項裡 ※ 重新編輯: JieJuen (09/30/2008)