[問題] VBA整理股票代號

作者: lag1056 (polovoe)   2019-03-14 19:24:04
(若是和其他不同軟體互動之問題 請記得一併填寫)
軟體:Excel
版本:2010
版上的高手們好
小弟有問題想請教
我用VBA去串連幾個表單
例如:
A表單(主要輸出表單)
B表單(股票代碼、收盤價)
C表單(股票代碼、持有成本)
D表單(股票代碼、單價成本)
串聯的標準是把B、C、D的股票代碼整理在A表單,然後刪除重複
之後用for跟if去找其他表單對應的數字
例如:
for i = 1 to N
for j = 1 to N
if worksheets("A").cells(i,1)=worksheets("B").cells(j,1) then
worksheets("A")cells(i,2)=worksheets("B").cells(j,2)
end if
next j
next i
一般的股票代碼都沒有問題(Ex:2330)
但是遇到一些比較特殊的股票代碼就會沒辦法串起來(Ex:00636)
在這邊卡了很久 一直都想不通
懇求各位高手能幫我解答
謝謝
作者: soyoso (我是耀宗)   2019-03-14 19:43:00
所以才要請提供檔案,上傳雲端空間,貼上連結(太長請找縮網址),有需要開共用(如google雲端)的話不要忘記
作者: lag1056 (polovoe)   2019-03-14 19:45:00
公司檔案有加密 我請主管解密後在上傳
作者: soyoso (我是耀宗)   2019-03-14 19:48:00
個人覺得開新活頁簿copy幾筆有問題的到工作表內(如這樣不用還要解密),就如我回文那樣,a欄和b欄應就可看出資料上的不同
作者: lag1056 (polovoe)   2019-03-14 19:42:00
對對對 就是這樣 我用表單內If函數試過 他說兩個是不一樣的東西
作者: lag1056 (polovoe)   2019-03-14 20:16:00
感謝S大 真的幫了我大忙~
作者: soyoso (我是耀宗)   2019-03-14 20:11:00
應如原po回文所述
作者: soyoso (我是耀宗)   2019-03-14 19:40:00
拍照、截圖是無法正確提供實際的資料是什麼的舉例好了 https://i.imgur.com/DwDD84p.jpg 看起來一樣的資料,a1和b1,a2和b2來判斷,回傳為假false為什麼?有可能是資料內有無法列印字元、也有可能顯示的資料是從儲存格式調整來的
作者: lag1056 (polovoe)   2019-03-14 20:02:00
我把資料格式都轉成文字就解決這個問題了 所以應該是VBA在複製資料的時候造成資料型態不一樣 所以if認為他們是不同的東西?
作者: lag1056 (polovoe)   2019-03-14 19:39:00
ㄜ...我不知道怎麼提供表單...但應該能拍照...
作者: soyoso (我是耀宗)   2019-03-14 19:36:00
嗯那提供一下檔案嘛
作者: lag1056 (polovoe)   2019-03-14 19:35:00
依照A表單的股票代碼 去找對應的B(C, D)表單其他數字填在A表單的股票代碼後面
作者: soyoso (我是耀宗)   2019-03-14 19:32:00
提供一下範例檔,會比較清楚原文所述的問題?如串起來是什麼意思?cells(..)=cells(..)判斷的意思?

Links booklink

Contact Us: admin [ a t ] ucptt.com