Lọc một ngày cuối của tuần (của chỉ số vn-index) (2 người xem)

  • Thread starter Thread starter yuumj
  • Ngày gửi Ngày gửi
Liên hệ QC

Người dùng đang xem chủ đề này

yuumj

Thành viên mới
Tham gia
11/1/13
Bài viết
5
Được thích
0
Nghề nghiệp
sinh viên
Xin chào mọi người.
Mình có vấn đề muốn hỏi đó là mình muốn lọc lấy một ngày cuối của tuần của một chuỗi dữ liệu. Cụ thể đó là dữ liệu vn-index. Tại vì có tuần thì ngày giao dịch cuối là thứ 6, nhưng có ngày lại là thứ 4, hoặc thứ 5 (do nghỉ lễ tết...). Mình muốn hỏi có cách nào lọc được như vậy không? Mình có đính kèm file.
Mình xin cảm ơn trước.
 

File đính kèm

Xin chào mọi người.
Mình có vấn đề muốn hỏi đó là mình muốn lọc lấy một ngày cuối của tuần của một chuỗi dữ liệu. Cụ thể đó là dữ liệu vn-index. Tại vì có tuần thì ngày giao dịch cuối là thứ 6, nhưng có ngày lại là thứ 4, hoặc thứ 5 (do nghỉ lễ tết...). Mình muốn hỏi có cách nào lọc được như vậy không? Mình có đính kèm file.
Mình xin cảm ơn trước.

Bạn nói vậy thì làm sao mà biết được ngày nào là cuối tuần đây? Bạn phải nêu ra được quy luật chung chứ
 
Xin chào mọi người.
Mình có vấn đề muốn hỏi đó là mình muốn lọc lấy một ngày cuối của tuần của một chuỗi dữ liệu. Cụ thể đó là dữ liệu vn-index. Tại vì có tuần thì ngày giao dịch cuối là thứ 6, nhưng có ngày lại là thứ 4, hoặc thứ 5 (do nghỉ lễ tết...). Mình muốn hỏi có cách nào lọc được như vậy không? Mình có đính kèm file.
Mình xin cảm ơn trước.
Mở cột phụ tính Tuần trong Năm: ví dụ E2: =WEEKNUM(D2)
Sử dụng Index và Match gần đúng: F2: =INDEX($A$2:$D$249,MATCH(ROW($A1),$E$2:$E$249,1),COLUMN(A:A))
Tôi lấy đến dòng 249 là chỉ lấy năm 2007, nếu kéo thêm thì kết quả không đúng vì qua năm khác công thức đếm Tuần sẽ tính lại từ đầu.
 

File đính kèm

Mở cột phụ tính Tuần trong Năm: ví dụ E2: =WEEKNUM(D2)
Sử dụng Index và Match gần đúng: F2: =INDEX($A$2:$D$249,MATCH(ROW($A1),$E$2:$E$249,1),COLUMN(A:A))
Tôi lấy đến dòng 249 là chỉ lấy năm 2007, nếu kéo thêm thì kết quả không đúng vì qua năm khác công thức đếm Tuần sẽ tính lại từ đầu.
Nếu như vậy thì không cần cột phụ đâu anh ạ, chỉ cần dùng hàm Weekday và công thức mảng là ra kết quả OK rồi!
Nhưng mẫu chốt là không biết ngày cuối tuần là ngày nào đó chứ, theo như ý chủ Topic thì còn liên quan ngày lễ, mà lễ thì mỗi năm 1 kiểu, hơn nữa còn có Tết nguyên đán -> liên quan đến Âm lịch -> không có 1 quy tắc logic trong tính ngày nghỉ hoặc không có 1 Data có sẵn ngày nghỉ thì tôi xin chịu.
(Có chăng số liệu của bạn tôi dùng vẽ biểu đồ xem tình hình chứng khoán Việt Nam thấy hay hay)
 
uhm. Cám ơn mọi người nhìu. đúng là không có logic gì cả. thôi mình đành ngồi mò thủ công thôi. T_T
 
Xin chào mọi người.
Mình có vấn đề muốn hỏi đó là mình muốn lọc lấy một ngày cuối của tuần của một chuỗi dữ liệu. Cụ thể đó là dữ liệu vn-index. Tại vì có tuần thì ngày giao dịch cuối là thứ 6, nhưng có ngày lại là thứ 4, hoặc thứ 5 (do nghỉ lễ tết...). Mình muốn hỏi có cách nào lọc được như vậy không? Mình có đính kèm file.
Mình xin cảm ơn trước.
Sao cột ngay thang ko xai ham date di de xac dinh no là ham ngay thang
=DATE(LEFT(B2,4),MID(B2,5,2),RIGHT(B2,2))

ko hieu y bạn the nao lam dai xem nhu la bai tham khao

minh chi lay ngay thu 6 thoi, con neu muon thu 4 thu 5 thi dua ra yeu cau cu the, vi ko biet nguyen tac bạn loc 2 ngay do nhu the nao
 

File đính kèm

Lần chỉnh sửa cuối:
uhm. Cám ơn mọi người nhìu. đúng là không có logic gì cả. thôi mình đành ngồi mò thủ công thôi. T_T
Do hổng thấy hàm WeekNum() trong VBA.
Làm thêm cột phụ như leonguyenz, rồi cho code "Cùi bắp" chạy 1 vèo thử xem sao.
PHP:
Public Sub CuiBap()
Dim Rng(), Arr(), I As Long, J As Long, K As Long
Rng = Range([A2], [A65000].End(xlUp).Offset(1)).Resize(, 5).Value
ReDim Arr(1 To UBound(Rng, 1), 1 To 4)
For I = 1 To UBound(Rng, 1) - 1
    If Rng(I, 5) <> Rng(I + 1, 5) Then
        K = K + 1
        For J = 1 To 4
            Arr(K, J) = Rng(I, J)
        Next J
    End If
Next I
If K then [H2].Resize(K, 4).Value = Arr
End Sub
 

File đính kèm

Sao cột ngay thang ko xai ham date di de xac dinh no là ham ngay thang


ko hieu y bạn the nao lam dai xem nhu la bai tham khao

minh chi lay ngay thu 6 thoi, con neu muon thu 4 thu 5 thi dua ra yeu cau cu the, vi ko biet nguyen tac bạn loc 2 ngay do nhu the nao

Từ file của Good-Luck, kyo sửa lại công thức ở cột E là: =IF(OR(WEEKDAY(D2,1)>WEEKDAY(D3,1),D3=""),D2,"")
Đại khái là ngoại trừ lọc thứ 6 thì nếu như trong tuần thứ nào lớn nhất thì lấy thứ đó.
 
Từ file của Good-Luck, kyo sửa lại công thức ở cột E là: =IF(OR(WEEKDAY(D2,1)>WEEKDAY(D3,1),D3=""),D2,"")
Đại khái là ngoại trừ lọc thứ 6 thì nếu như trong tuần thứ nào lớn nhất thì lấy thứ đó.
xin Mods spam chut : lâu rồi ko thấy anh KyO xuất hiện, ko biết đi đau tu vậy??? mà bỏ bê các em nhỏ bơ vơ quá!!!

nghiaphuc: Spam thì spam, nhưng làm ơn đừng spam bằng tiếng Việt không dấu, mất công BĐH phải xóa bài lắm đồng chí ạ.
do l
úc nãy xài máy kô chính chủ, ko có bộ gõ, (ko tiện can thiệp) cảm phiền admin kỹ thuật chỉnh lại bộ gõ web ko cho khi gõ chữ việt bị nhảy nữa, mỗi lần gõ bị nhảy về đầu dòng khó chịu quá
 
Lần chỉnh sửa cuối:
xin Mods spam chut : lâu rồi ko thấy anh KyO xuất hiện, ko biết đi đau tu vậy??? mà bỏ bê các em nhỏ bơ vơ quá!!!

nghiaphuc: Spam thì spam, nhưng làm ơn đừng spam bằng tiếng Việt không dấu, mất công BĐH phải xóa bài lắm đồng chí ạ.
do l
úc nãy xài máy kô chính chủ, ko có bộ gõ, (ko tiện can thiệp) cảm phiền admin kỹ thuật chỉnh lại bộ gõ web ko cho khi gõ chữ việt bị nhảy nữa, mỗi lần gõ bị nhảy về đầu dòng khó chịu quá

kyo vẫn lên diễn đàn đều đều đó chứ mà tại ít post bài nên bạn không thấy ấy mà.

Về bộ gõ, để kyo nghiên cứu lại, tại một dạo thấy không ai ý kiến, nghĩ là ổn rồi chứ __--__
 
Sao cột ngay thang ko xai ham date di de xac dinh no là ham ngay thang


ko hieu y bạn the nao lam dai xem nhu la bai tham khao

minh chi lay ngay thu 6 thoi, con neu muon thu 4 thu 5 thi dua ra yeu cau cu the, vi ko biet nguyen tac bạn loc 2 ngay do nhu the nao
uhm, ý của mình chính là lấy ngày thứ 6, còn ko có ngày thứ 6 thì lấy ngày liền kề trước, nói chung là mỗi tuần đều lấy 1 ngày. Mình diễn đạt không có được tốt lắm. Nếu lọc một lúc không được thì mình lọc thứ 6 trước rồi những tuần nào không có thứ 6 mình tự lấy chuột lọc vậy ^_^. thank bạn nha.
Ba Tê đã viết:
Do hổng thấy hàm WeekNum() trong VBA.
Làm thêm cột phụ như leonguyenz, rồi cho code "Cùi bắp" chạy 1 vèo thử xem sao
Cám ơn bạn mà thật ngại quá, m không có biết chạy code. T_T
kyo đã viết:
Từ file của Good-Luck, kyo sửa lại công thức ở cột E là: =IF(OR(WEEKDAY(D2,1)>WEEKDAY(D3,1),D3=""),D2,"")
Đại khái là ngoại trừ lọc thứ 6 thì nếu như trong tuần thứ nào lớn nhất thì lấy thứ đó
Mình làm thử rồi cơ mà vẫn chỉ lọc được mỗi thứ 6 thôi. T_T
 
Lọc ra bình thường mà bạn, bạn để ý ngày 15/02/2007 là thứ 5 nhé, bạn xem có lọc được qua bên kia không? /-*+/

P/S: Nếu bạn muốn chạy code của bác Ba Tê thì bạn cần phải tạo cột phụ như bác ấy, rồi bấm Alt + F11, tạo module và copy code của bác ấy vào là chạy được thôi. Còn không thì bạn cứ bấm cái mũi tên vàng vàng của bác ấy trong file là cũng chạy được nốt (nhớ mở macro, chi tiết có thể search trên diễn đàn GPE).

Kyo.
 

File đính kèm

Lọc ra bình thường mà bạn, bạn để ý ngày 15/02/2007 là thứ 5 nhé, bạn xem có lọc được qua bên kia không? /-*+/

P/S: Nếu bạn muốn chạy code của bác Ba Tê thì bạn cần phải tạo cột phụ như bác ấy, rồi bấm Alt + F11, tạo module và copy code của bác ấy vào là chạy được thôi. Còn không thì bạn cứ bấm cái mũi tên vàng vàng của bác ấy trong file là cũng chạy được nốt (nhớ mở macro, chi tiết có thể search trên diễn đàn GPE).

Kyo.
hờ, được thiệt rùi.hihi, mình kiểm tra mà cũng mờ cả con mắt. Cám ơn bạn nhiều nhiều hen. ^_^
 
Web KT

Bài viết mới nhất

Back
Top Bottom