PDA

View Full Version : Ghép hai cột trong excel



npv
27-12-07, 08:51 PM
em có một file vidu gồm 3 cột. Cột A, Cột B và Cột Kết quả. Trong đó cột kết quả là cột cần phải sử dụng các công cụ của excel để tạo ra. Yêu cầu như sau lấy số của cột A ghép với cột B thì có kết quả tại cột kết quả. Ví dụ ở ô A2: là 123, B2: là 456 thì ở ô C2: kết quả là 123456. Mong các bác giúp em sớm.

thpta
27-12-07, 09:01 PM
copy công thức này (trong dấu "") dán vào cell C2 : "=A2&B2"

huongqn
27-12-07, 09:03 PM
Bạn làm như sau nhé.
Cột C2 sẽ có công thức là =A2&B2

Gia_Khue
27-12-07, 09:15 PM
Các bác cho GK hỏi tí.

Muốn nối 2 cột ngoài dùng "&" thì còn có thể dùng hàm Concatenate. Vậy không biết 2 cách làm này có gì khác nhau không nhỉ?

Tks các bác.

GK

viendo
27-12-07, 09:50 PM
Bạn làm như sau nhé.
Cột C2 sẽ có công thức là =A2&B2
Cho mình bổ sung lưu ý nhé, tại cell kết quả C2 bây giờ là Text 123456 chứ không phải là số. Muốn là số thì thêm hàm Value vào :
=value(A2&B2)

To GK : Mình nghĩ dùng "&" và hàm Concatenate cũng giống nhau là nối chuỗi text nhưng còn tùy vào từng trường hợp sẽ sử dụng cái nào.

nguyentuhp
27-12-07, 11:48 PM
CONCATENATE (text1,text2,...)
Text1, text2, ... are 1 to 30 text items to be joined into a single text item. The text items can be text strings, numbers, or single-cell references.
Remarks
The "&" operator can be used instead of CONCATENATE to join text items.
Hoàn toàn giống nhau mà!

SA_DQ
28-12-07, 06:49 AM
Cho GK hỏi tí. Muốn nối 2 cột ngoài dùng "&" thì còn có thể dùng hàm Concatenate. Vậy không biết 2 cách làm này có gì khác nhau không nhỉ? GK
Hai hàm này khác nhau trong trường hợp các số bé hơn không! (Bạn cứ thử, sẽ biết ngay mà!)

Mình có công thức này & đúng khi số ở cột 'B' > 0

=IF(B10>0;A10*10^(LEN(B10))+B10*IF(ABS(A10)<>A10;-1))

kongcom
28-12-07, 08:36 AM
Theo tôi hai cách này Không giống nhau .
CONCATENATElà hàm cho phép ghép nối 30 cell kí tự nhưng sẽ không cho kết quả ở cell thứ 31
"&" thì cùng công việc tương đương chúng ta phải viết 29 lần nhưng không bị hạn chế về số lượng các cell .
Giống nhau chỉ ở chỗ kêt quả cùng là dạng text . Cú pháp chuyển trở về dạng ban đầu xem bài #5 .

anhtuan1066
28-12-07, 08:59 AM
Nếu muốn chuyễn về dạng số có thể tính toán dc thì còn có cách:
=A2&B2*1
Tuy nhiên hảy cẩn thận với cái vụ & này nhé! Vì sẽ có nhiều rắc rối xảy ra ko lường trước dc! Cho hỏi: Bạn làm thế đễ làm gì?
ANH TUẤN

thanhphan991
08-12-09, 10:17 AM
cac anh cho em hoi ti nha,
em co du lieu o cot A la abc
em co du lieu o cot B la ihk
em muon ghep vao cot C = abc
ihk
dung cong thuc nao chi giup em.
vi neu dung C=A&B ket qua chi duoc C= abcihk
ThankS!

Hai Lúa Miền Tây
08-12-09, 10:40 AM
cac anh cho em hoi ti nha,
em co du lieu o cot A la abc
em co du lieu o cot B la ihk
em muon ghep vao cot C = abc
ihk
dung cong thuc nao chi giup em.
vi neu dung C=A&B ket qua chi duoc C= abcihk
ThankS!
Bạn nên sửa bài viết của bạn thành tiếng Việt có dấu nhé, nếu không bài của bạn sẽ bị xoá.
Có phải bạn muốn xuống dòng cột thứ 2 khi nối ?

C1=A1CHAR(10)&B1

Nhớ chỉnh nó về định dạng là Wrap Text nhé.

ndu96081631
08-12-09, 10:44 AM
Bạn nên sửa bài viết của bạn thành tiếng Việt có dấu nhé, nếu không bài của bạn sẽ bị xoá.
Có phải bạn muốn xuống dòng cột thứ 2 khi nối ?

C1=A1CHAR(10)&B1

Nhớ chỉnh nó về định dạng là Wrap Text nhé.
Thay CHAR(10) bằng tổ hợp phím Alt + Enter cũng là cách dể nhớ

Hai Lúa Miền Tây
08-12-09, 10:55 AM
Thay CHAR(10) bằng tổ hợp phím Alt + Enter cũng là cách dể nhớ
Hình như là không được thầy à, vì tác giả yêu cầu nối chuổi của 2 cột.

huuthang_bd
08-12-09, 11:03 AM
Hai hàm này khác nhau trong trường hợp các số bé hơn không! (Bạn cứ thử, sẽ biết ngay mà!)

Mình có công thức này & đúng khi số ở cột 'B' > 0

=IF(B10>0;A10*10^(LEN(B10))+B10*IF(ABS(A10)<>A10;-1))
Thật sự không hiểu gì hết ở cái ví dụ này. Ai hiểu giải thích lại giùm.
Cảm ơn!

ndu96081631
08-12-09, 11:33 AM
Hình như là không được thầy à, vì tác giả yêu cầu nối chuổi của 2 cột.
Được chứ
- Gõ =A1 & "
- Bấm tổ hợp phím Alt + Enter
- Gõ tiếp " & B1 rồi Enter

nguyen thi chuyen
19-03-11, 09:51 AM
anh (chị) ơi cho em hỏi chút ạ! em co1 bảng gồm 4 cột và 3 dòng.dòng đầu tiên(bỏ ô đầu) lần lượt ghi A,B,C.cột đầu tiên(bỏ ô đầu) lần luợt ghi C,D. bay giờ em muốn điền vào các ô trông còn lại trong bảng đó sao cho giao của cột và dòng tương ứng (ô) là từ được ghép bởi cột và dòng tương ưng đó. ví dụ như tạiô22(giao của cột 2 và dòng 2) thì sẽ có kết quả là AC, tại ô23 là từ AD. anh (chị) giúp em với ạ!thanks anh(chị) nhiều!

nghiaphuc
19-03-11, 01:00 PM
anh (chị) ơi cho em hỏi chút ạ! em co1 bảng gồm 4 cột và 3 dòng.dòng đầu tiên(bỏ ô đầu) lần lượt ghi A,B,C.cột đầu tiên(bỏ ô đầu) lần luợt ghi C,D. bay giờ em muốn điền vào các ô trông còn lại trong bảng đó sao cho giao của cột và dòng tương ứng (ô) là từ được ghép bởi cột và dòng tương ưng đó. ví dụ như tạiô22(giao của cột 2 và dòng 2) thì sẽ có kết quả là AC, tại ô23 là từ AD. anh (chị) giúp em với ạ!thanks anh(chị) nhiều!
Việc này chỉ cần sử dụng linh hoạt các loại địa chỉ (tuyệt đối, tương đối, hỗn hợp) là được thôi. VD: Công thức cho B2 là =B$1&$A2, sau đó fill công thức cho toàn bảng.

tuangiang25022008
14-04-11, 12:38 AM
nếu làm như ndu96081631 thì phải kéo xuóng dòng.
Giả sử một bài toán có khoảng 10000 dòng thì kéo như thế thì rất là lâu.
bạn có thể làm làm bằng vba được không? Hoặc có thể bạn cho mình một ví dụ làm bằng vba.
mình cảm ơn trước.

hairom
29-04-11, 02:46 PM
Cho tôi hỏi: nếu ghép ô chữ và ô số với nhau, làm sao để ô kết quả thể hiện phần số có dấu chấm (hoặc phẩy) ngăn cách phần trăm ngàn hoặc triệu? Cảm ơn nhiều.

huuthang_bd
29-04-11, 02:54 PM
Cho tôi hỏi: nếu ghép ô chữ và ô số với nhau, làm sao để ô kết quả thể hiện phần số có dấu chấm (hoặc phẩy) ngăn cách phần trăm ngàn hoặc triệu? Cảm ơn nhiều.
Giả sử ô A1 của bạn là dữ liệu chuỗi, ô A2 là dữ liệu số. Bạn dùng công thức này:

=A1&TEXT(B1,"#,0")

ngocnhu1011
19-05-11, 05:17 PM
Mình muốn ghép dữ liệu ở 2 cột lại với nhau với điều kiện như thế này:
- Giả sử ở cột A có giá trị: abc. cột B có giá trị: 123.
Bây giờ mình muốn nối 2 cột này lại với nhau như thế này: abc123 hoặc abc123.
Giúp mình với nhé!

vubichngoan
10-10-11, 10:58 AM
mình có dữ liệu thế này mong mọi người giúp cho với
Cột A: ABC
Cột B: 123
yêu cầu cột C là: ABC/123
Mong được giúp đỡ & xin chân thành cảm ơn

phihndhsp
10-10-11, 11:43 AM
Cột C= cộtA &"/" & CộtB Đơn giản vậy thôi

ktttvt-cta
07-12-11, 03:24 PM
Cột C= cộtA &"/" & CộtB Đơn giản vậy thôi

xin giúp mình với, số là mình nhập 2 chuỗi ở 2 ô khác nhau, giờ mình muốn ghép lại thành 1 chuỗi, nhưng khi ghép xong xóa 2 ô kia thì chuỗi mình mới tạo bị lỗi, có cách nào giúp mình với. Cảm ơn nhiều lắm!

vubichngoan
15-12-11, 04:36 PM
xin giúp mình với, số là mình nhập 2 chuỗi ở 2 ô khác nhau, giờ mình muốn ghép lại thành 1 chuỗi, nhưng khi ghép xong xóa 2 ô kia thì chuỗi mình mới tạo bị lỗi, có cách nào giúp mình với. Cảm ơn nhiều lắm!
Mình vẫn thường làm thế này. Sau khi tạo được chuỗi cần ghép mình bôi đen chúng và ấn Copy rùi ấn pase special. Ko biết có đúng ý bạn ko nữa

hoanglong_bht
18-05-12, 03:29 PM
kaka , hôm nay mình cũng kẹt 1 trường hợp giống vậy , mình là thiết kế thẻ nhân viên phải add nội dung cho từng thẻ, công ty người ta cung cấp fiel excel họ và chữ lót chung 1 cột ( cột A) , tên chung 1 cột ( Cột B) , mình muốn gắn 2 cột thành 1. mình làm thêm 1 cột ký tự cách kéo chuột dài xuống (cột C) mình qua cột D gõ lệnh = Cột A & Cột C & Cột B ====> thế là ok

thanchetcungyeu
26-12-12, 08:30 AM
Mình cũng dùng cột A&B nhưng sao kết quả nó lại thế này
94619
Khi mình kích vào thì nó thế này
94620
Khi mình copy cột C sang file khác thì xóa file cũ đi thì file mới cũng mất. Có bác nào khắc phục giúp em với.

À nói thêm. Bình thường nó hiện abc123 nhưng khi kích vào nó lại là cái A1&B1. Cái mình cần là chuỗi abc123 chứ không phải cái công thức A1&B1.Thanks

xuan.nguyen82
26-12-12, 09:24 AM
Mình cũng dùng cột A&B nhưng sao kết quả nó lại thế này
94619
Khi mình kích vào thì nó thế này
94620
Khi mình copy cột C sang file khác thì xóa file cũ đi thì file mới cũng mất. Có bác nào khắc phục giúp em với.

À nói thêm. Bình thường nó hiện abc123 nhưng khi kích vào nó lại là cái A1&B1. Cái mình cần là chuỗi abc123 chứ không phải cái công thức A1&B1.Thanks

Nếu không muốn để hiện công thức đó thì bạn Copy Paste Value cái cột đó là được thôi mà.

thanchetcungyeu
26-12-12, 02:25 PM
Nếu không muốn để hiện công thức đó thì bạn Copy Paste Value cái cột đó là được thôi mà.
Copy Value kiểu gì vậy bạn mình ko biết. Mình copy thì toàn là copy công thức thôi

vanle33
26-12-12, 02:33 PM
Copy Value kiểu gì vậy bạn mình ko biết. Mình copy thì toàn là copy công thức thôi
1) Bạn tự bỏ chữ ký quảng cáo đi nếu không sẽ ----> phạm quy
2) Muốn Paste Value bạn nhấn Ctrl+C đến địa chỉ ô cần dán ấn phải chuột chọn Paste Special chọn Values
Bạn thử xem đi

thanchetcungyeu
26-12-12, 02:41 PM
1) Bạn tự bỏ chữ ký quảng cáo đi nếu không sẽ ----> phạm quy
2) Muốn Paste Value bạn nhấn Ctrl+C đến địa chỉ ô cần dán ấn phải chuột chọn Paste Special chọn Values
Bạn thử xem đi
Hi. Được rồi. thanks nhiều
p/s: Mình đọc nội quy không thấy cấm quảng cáo trong chữ ký.

xuan.nguyen82
26-12-12, 05:02 PM
Hi. Được rồi. thanks nhiều
p/s: Mình đọc nội quy không thấy cấm quảng cáo trong chữ ký.

Theo mình hiểu là: Nội quy quy định thế này:

VI.Về các thông tin, biểu tượng cá nhân, chữ ký, tin nhắn, mail
1. Chữ ký của thành viên không nên quá dài dòng, kích thước lớn. Nội dung chữ ký phải tuân thủ những quy định về nội dung và hình thức bài viết.

Mà quy định về nội dung và hình thức bài viết là:

I.Quy định về nội dung
Các thành viên của Giải pháp Excel được tự do gửi bài, có quyền sửa bài của mình khi bài đã được gửi lên và có quyền trích dẫn bất cứ bài nào trên diễn đàn, nhưng phải tuân thủ những quy định sau đây:
8. Quảng cáo: Diễn đàn phát triển dựa trên bài viết chuyên môn, chuyên mục quảng cáo chỉ dành cho thành viên có đóng góp cho diễn đàn từ 30 bài viết trở lên hoặc nhà tài trợ.


Chữ ký chứa link quảng cáo cũng là vi phạm quy định của diễn đàn.
Từ 30 bài trở lên bạn có thể đăng tin trong mục quảng cáo, rao vặt.

sky251hl
29-12-14, 07:30 PM
Các bạn cho mình hỏi. Cột A của mình là Nguyễn, Cột B là Thanh Sang, mình muốn tạo cột C là "Nguyễn Sang" và cột D là "Sang Nguyễn".
Các bạn chỉ mình với.
Thanks các bạn.

vanle33
29-12-14, 07:51 PM
Các bạn cho mình hỏi. Cột A của mình là Nguyễn, Cột B là Thanh Sang, mình muốn tạo cột C là "Nguyễn Sang" và cột D là "Sang Nguyễn".
Các bạn chỉ mình với.
Thanks các bạn.
Tách cột B thành 2 cột có dữ liệu là "Thanh" và "Sang".
Rồi Cột C=Cột A&"Thanh"
Cột D="Sang"&Cột A

Ba Tê
29-12-14, 07:52 PM
Các bạn cho mình hỏi. Cột A của mình là Nguyễn, Cột B là Thanh Sang, mình muốn tạo cột C là "Nguyễn Sang" và cột D là "Sang Nguyễn".
Các bạn chỉ mình với.
Thanks các bạn.

Bạn đưa 1 ví dụ không tổng quát, nên có sai lệch với dữ liệu mẫu thì bạn tùy chỉnh nhé.

C1=A1& " " & MID(B1;FIND(" ";B1);100)
Nghiên cứu rồi chuyển công thức sang D1.
-------------------------
Chú ý khi hỏi bài thì có yêu cầu và ví dụ tổng quát, nếu không thì sau khi có kết quả lại "NẾU".
Ví dụ như Phạm Duy, Nguyễn Thị Hoàng Oanh, Trần Phụng Hoàng Đại Hải .... thì C1 là gì? D1 là gì?

phihndhsp
29-12-14, 09:04 PM
Các bạn cho mình hỏi. Cột A của mình là Nguyễn, Cột B là Thanh Sang, mình muốn tạo cột C là "Nguyễn Sang" và cột D là "Sang Nguyễn".
Các bạn chỉ mình với.
Thanks các bạn.
lỡ tên có 4 hay 5 hay 6 từ thì phải làm như thế nào???

hoangviet1990
17-09-15, 06:41 AM
Các anh chị giúp em với ạ. Em có dữ liệu ở ô A1 ghép với cột B thì ra kết quả ở cột C là C1=A1B1 C2=A1B2 v.v.. và tiếp như thế ở cột D là D1=A2B1 D2=A2B2 v.v.. Như thế thì dùng công thức nào ạ. Em xin cám ơn cám bác ạ

khuongvietphong
17-09-15, 07:10 AM
Các anh chị giúp em với ạ. Em có dữ liệu ở ô A1 ghép với cột B thì ra kết quả ở cột C là C1=A1B1 C2=A1B2 v.v.. và tiếp như thế ở cột D là D1=A2B1 D2=A2B2 v.v.. Như thế thì dùng công thức nào ạ. Em xin cám ơn cám bác ạ

Bạn xem vầy đã ổn chưa

hoangviet1990
17-09-15, 02:07 PM
Em muốn làm như thế này ngoài việc copy thì có công thức nào làm nhanh được không ạ?

147296

phulien1902
17-09-15, 02:22 PM
Như thế này thì mình phải làm thủ công từng cột đúng không bạn?

Bạn ấy không phải làm thủ công từng cột, mà bạn ấy làm thế này:
- Tạo 2 cột dữ liệu A & B, rồi gán công thức cho C1= INDIRECT("A"&COLUMN()-2)&$B1
- Kéo công thức vừa rồi hết sang phải, rồi tất cả lại kéo xuống.

hoangviet1990
17-09-15, 02:41 PM
Em muốn làm như trong hình ở bài trên thì có cách nào không ạ?

vanle33
17-09-15, 03:58 PM
Em muốn làm như trong hình ở bài trên thì có cách nào không ạ?
Bạn không đọc cách dùng công thức ở #40 sao? Hay bạn muốn cách nào khác nữa?

hoangviet1990
18-09-15, 09:22 PM
Em muốn như thế này ạ !!

http://www.giaiphapexcel.com/forum/attachment.php?attachmentid=147296&stc=1

vanle33
18-09-15, 09:39 PM
Em muốn như thế này ạ !!


Không phải như hình dưới sao
http://i1273.photobucket.com/albums/y404/vanle33/1_zpsfhsc1kpl.jpg (http://s1273.photobucket.com/user/vanle33/media/1_zpsfhsc1kpl.jpg.html)

khuongvietphong
18-09-15, 09:50 PM
Em muốn như thế này ạ !!

http://www.giaiphapexcel.com/forum/attachment.php?attachmentid=147296&stc=1

Bạn sửa lại ở ô C1 CT này : =INDIRECT("A"&INT((ROW()-1)/$B$16)+1)&INDIRECT("B"&MOD(ROW()-1,$B$16)+1)

hoangviet1990
18-09-15, 10:05 PM
Em nhập nó toàn báo sai công thức thôi bác à !

147383

khuongvietphong
18-09-15, 10:08 PM
Em nhập nó toàn báo sai công thức thôi bác à !

147383

Làm luôn vào File cho bạn

khuongvietphong
18-09-15, 10:09 PM
Không phải như hình dưới sao
http://i1273.photobucket.com/albums/y404/vanle33/1_zpsfhsc1kpl.jpg (http://s1273.photobucket.com/user/vanle33/media/1_zpsfhsc1kpl.jpg.html)

Bạn ấy muốn kết quả trên 1 cột thôi bác ạ

hoangviet1990
19-09-15, 06:46 PM
Bác nhập kiểu gì mà em nhập vào không ra kết quả vậy?

147423

khuongvietphong
19-09-15, 06:55 PM
Bác nhập kiểu gì mà em nhập vào không ra kết quả vậy?

147423

Bạn gửi File bạn làm lên mình xem giúp

hoangviet1990
19-09-15, 07:46 PM
File đây ạ, bác giúp em nhé.. :)

khuongvietphong
19-09-15, 08:57 PM
File đây ạ, bác giúp em nhé.. :)

Bạn gửi File nào lên đây. Nó có giống File lúc đầu bạn yêu cầu đâu, mình cũng chẳng thấy bất kỳ CT nào trong đó và cũng chẳng hiểu bạn

muốn giúp thế nào nữa !

hoangviet1990
20-09-15, 01:04 PM
File đấy ạ, em cũng muốn dùng như công thức bác cho ví dụ, nhưng khi cho công thức vào bảng của e vừa gửi bác thì không được?

Hình như là công thức bác cho chỉ kết hợp được với số, em cần dữ liệu ở cột B là ký tự

XuanThanhCAC
26-11-15, 03:26 PM
Chào các bác!

Em mới tham gia, có nhu cầu nối dữ liệu có điều kiện như file em gửi kèm theo đây. Muốn có kết quả như ô AH9, kết quả ở ô AH9 là nhặt từ ô F11:F26 (bôi vàng). Kết quả tại ô AH9 phải lọc đi những tài khoản trùng nhau (1331) và nối dữ liệu từ F11:F26.
Mục đích của file này là em muốn nhập số liệu từ mẫu (form) này (F11:F26) nhưng khi in lại sang mẫu khác. Có bác nào biết cách làm tư vấn cho em với, chỉ cần ý tưởng cũng được, cả dùng bằng Formula hoặc dùng bằng VBA.
Cám ơn các bác.

Let'GâuGâu
26-11-15, 03:49 PM
Chào các bác!

Em mới tham gia, có nhu cầu nối dữ liệu có điều kiện như file em gửi kèm theo đây. Muốn có kết quả như ô AH9, kết quả ở ô AH9 là nhặt từ ô F11:F26 (bôi vàng). Kết quả tại ô AH9 phải lọc đi những tài khoản trùng nhau (1331) và nối dữ liệu từ F11:F26.
Mục đích của file này là em muốn nhập số liệu từ mẫu (form) này (F11:F26) nhưng khi in lại sang mẫu khác. Có bác nào biết cách làm tư vấn cho em với, chỉ cần ý tưởng cũng được, cả dùng bằng Formula hoặc dùng bằng VBA.
Cám ơn các bác.


xem file nha......................

Ba Tê
26-11-15, 03:52 PM
Chào các bác!

Em mới tham gia, có nhu cầu nối dữ liệu có điều kiện như file em gửi kèm theo đây. Muốn có kết quả như ô AH9, kết quả ở ô AH9 là nhặt từ ô F11:F26 (bôi vàng). Kết quả tại ô AH9 phải lọc đi những tài khoản trùng nhau (1331) và nối dữ liệu từ F11:F26.
Mục đích của file này là em muốn nhập số liệu từ mẫu (form) này (F11:F26) nhưng khi in lại sang mẫu khác. Có bác nào biết cách làm tư vấn cho em với, chỉ cần ý tưởng cũng được, cả dùng bằng Formula hoặc dùng bằng VBA.
Cám ơn các bác.
Copy Function này vào Module

Public Function GPE(Rng As Range) As String
Dim I As Long
GPE = Rng(1)
For I = 2 To Rng.Count
If InStr(GPE, Rng(I)) = 0 Then
GPE = GPE & ", " & Rng(I)
End If
Next I
End Function
Ô AH9 nhập công thức =GPE(F11:F26)
Kết quả: gặp thằng nào "xâu" thằng đó, không có theo thứ tự nào cả nhé.

XuanThanhCAC
26-11-15, 04:14 PM
Cám ơn bác Let'GâuGâu !
Em đã thử vào file và khi em đổi vùng từ F11:F14 sang F11:F26 thì kết quả cứ có dấu "," sau cùng. Vì vùng của em là từ F11:F26, các ô từ F15:F26 không có số liệu là ở phiếu chi này thôi, phiếu khác có thể có.
Bác xem và sửa lại giùm em chút xíu, nói thật đọc code của bác em chả hiểu gì để sửa!

XuanThanhCAC
26-11-15, 04:47 PM
Kết quả: gặp thằng nào "xâu" thằng đó, không có theo thứ tự nào cả nhé.

Cám ơn bác, em đã dùng được, nhưng nếu bác sắp xếp luôn cho em từ lớn đến bé hoặc bé đến lớn thì hoàn hảo!

Ba Tê
26-11-15, 04:53 PM
Cám ơn bác, em đã dùng được, nhưng nếu bác sắp xếp luôn cho em từ lớn đến bé hoặc bé đến lớn thì hoàn hảo!

Sao không sắp xếp trong vùng B11:H26 trước?

XuanThanhCAC
26-11-15, 06:27 PM
Chào các bác!

Nhờ các bác chỉ dùm em làm thế nào vừa nối dữ liệu có loại trùng, vừa có điều kiện để nối.
Trong file em gửi kèm theo đây, kết quả đặt ở ô AG9, số liệu lấy từ vùng E8:E23. Kết quả vừa loại bỏ kết quả trùng (1331) vừa căn cứ vào số chứng từ PC-002 - tìm theo ô AG7 trong vùng A8:A23
Các bác giúp em với, em cám ơn!

Let'GâuGâu
26-11-15, 06:45 PM
Chào các bác!

Nhờ các bác chỉ dùm em làm thế nào vừa nối dữ liệu có loại trùng, vừa có điều kiện để nối.
Trong file em gửi kèm theo đây, kết quả đặt ở ô AG9, số liệu lấy từ vùng E8:E23. Kết quả vừa loại bỏ kết quả trùng (1331) vừa căn cứ vào số chứng từ PC-002 - tìm theo ô AG7 trong vùng A8:A23
Các bác giúp em với, em cám ơn!

bạn tìm hàm jointext của tác giả NDU........là chuyện trị mấy cái dzụ này, còn xài dictionary thì nó vậy


Option Explicit
Function MyJoint(CriRng As Range, cri, rng As Range)
Dim dic As Object, arr, CriArr As Variant, i As Long
CriArr = CriRng.Value
arr = rng.Value

Set dic = CreateObject("Scripting.Dictionary")
For i = 1 To UBound(arr)
If CriArr(i, 1) = cri And Not dic.exists(arr(i, 1)) Then dic.Add arr(i, 1), ""
Next
If dic.Count Then MyJoint = Join(dic.Keys, ",")
End Function




=MyJoint(A8:A23,AG7,E8:E23)
==================
sắp xếp theo thứ tự từ nhỏ đến lớn


Option Explicit
Function MyJoint(CriRng As Range, cri, rng As Range)
Dim dic As Object, arr, CriArr, tam(1 To 100000) As Variant, i As Long, st As String
CriArr = CriRng.Value
arr = rng.Value

Set dic = CreateObject("Scripting.Dictionary")
For i = 1 To UBound(arr)
If CriArr(i, 1) = cri And Not dic.exists(arr(i, 1)) Then
dic.Add arr(i, 1), ""
tam(arr(i, 1)) = arr(i, 1) & ","
End If
Next
If dic.Count Then
st = Join(tam, "")
MyJoint = Left(st, Len(st) - 1)
End If
End Function

MrX7CEO
05-03-16, 11:49 AM
Chào cả nhà!
Cả nhà giúp với, mình có 3 cột dữ liệu (như file đính kèm) giờ mình muốn nối lần lượt 3 dữ liệu của 3 cột đấy lại với nhau thì phải làm sao ạ.
VD như: A1a, A1b, A1c, ..
rồi đến A2a, A2b, A2c, ...
B1a, B1b, B1c, ...

Hi vọng mọi người hiểu ý của mình!
Cảm ơn cả nhà!