Cho em hỏi đẩy dữ liệu từ một ô ra các ô trong excel thế nào? (1 người xem)

Liên hệ QC

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

hoanghoa_dtt91

Thành viên chính thức
Tham gia
5/11/13
Bài viết
67
Được thích
0
Giờ em muốn nhập vào một ô và sau mỗi lần nhập vào ô ấy thì dữ liệu củ được đẩy xuống ô dưới. Nhập vào ô đầu tiên và dữ liệu đẩy ra thành một cột làm thế nào được? Xin cảm ơn!
 
Về thủ thuật có sẵn không đáp ứng được nha bạn, còn viết code thì bạn có thể tham khảo code này:
[gpecode=vb]
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, [A1]) Is Nothing Then
Target.Offset([A65535].End(3).Row) = Target
End If
End Sub
[/gpecode]
 

File đính kèm

Về thủ thuật có sẵn không đáp ứng được nha bạn, còn viết code thì bạn có thể tham khảo code này:
[gpecode=vb]
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, [A1]) Is Nothing Then
Target.Offset([A65535].End(3).Row) = Target
End If
End Sub
[/gpecode]
Bạn ơi cho mình hỏi, đây la mình nhập vào ô đấy thì nó đẩy dl xuống, giờ mình không muốn nhập trực tiếp vào ô đấy mà ô đấy xẽ lấy dữ liệu từ một ô khác chẳng hạn, thì nó lại không đẩy xuống được. bạn làm giúp mình với. giờ mới đụng đến nên gà. Thank!
 
Bạn ơi cho mình hỏi, đây la mình nhập vào ô đấy thì nó đẩy dl xuống, giờ mình không muốn nhập trực tiếp vào ô đấy mà ô đấy xẽ lấy dữ liệu từ một ô khác chẳng hạn, thì nó lại không đẩy xuống được. bạn làm giúp mình với. giờ mới đụng đến nên gà. Thank!
Không hiểu bạn nói gì luôn.
Bạn gửi file ví dụ lên, ghi vài ba mẫu ví dụ đính kèm thử xem.
 
Bạn ơi cho mình hỏi, đây la mình nhập vào ô đấy thì nó đẩy dl xuống, giờ mình không muốn nhập trực tiếp vào ô đấy mà ô đấy xẽ lấy dữ liệu từ một ô khác chẳng hạn, thì nó lại không đẩy xuống được. bạn làm giúp mình với. giờ mới đụng đến nên gà. Thank!
Cái quái gì cũng có cách xử. Muốn trò gì thì ném cái file lên
 
Ý mình giống cái file hôm qua bạn gửi cho mình đấy. Nhưng cái hôm qua thì mình nhập trực tiếp từ excel vào ô đó thì dữ liệu nó đẩy dần xuống dưới. Như giờ mình ko nhập trực tiếp nữa mà dữ liệu của ô đó được lấy từ chỗ khác đưa vào.
 
Ý mình giống cái file hôm qua bạn gửi cho mình đấy. Nhưng cái hôm qua thì mình nhập trực tiếp từ excel vào ô đó thì dữ liệu nó đẩy dần xuống dưới. Như giờ mình ko nhập trực tiếp nữa mà dữ liệu của ô đó được lấy từ chỗ khác đưa vào.
Lấy dữ liệu chỗ khác là chỗ nào? Trong cùng sheet đó hay sheet khác, hay là từ 1 file khác, hay là gì gì gì đó.
Đã nói rồi cái thứ quỷ gì GPE cũng chơi được nếu là yêu cầu hợp lý.
 
Giờ mình có một phần mềm đẩy dữ liệu vào Excel. mình muốn đẩy vào 1 ô và sau mỗi lần đẩy dữ liệu mới vào thì dữ liệu củ sẽ được đẩy xuống ô dưới cứ thế thành một cột. Nhờ mọi người ạ.
 
Giờ mình có một phần mềm đẩy dữ liệu vào Excel. mình muốn đẩy vào 1 ô và sau mỗi lần đẩy dữ liệu mới vào thì dữ liệu củ sẽ được đẩy xuống ô dưới cứ thế thành một cột. Nhờ mọi người ạ.
Với kiểu nói lòng vòng này thời bạn chờ đến têt Công Gô nhé
Mình chạy thôi.
 
Với kiểu nói lòng vòng này thời bạn chờ đến têt Công Gô nhé
Mình chạy thôi.
VD Giờ mình đang có phần mền trỏ vào ô A1, cứ 1 giấy mình đẩy 1 giá trị vào ô A1, mình muốn mỗi lần đẩy vào thì giá trị củ được đẩy xuống ô dưới, tức A2=A1, A1= giá trị mới. cứ đẩy dần vậy.
 
VD Giờ mình đang có phần mền trỏ vào ô A1, cứ 1 giấy mình đẩy 1 giá trị vào ô A1, mình muốn mỗi lần đẩy vào thì giá trị củ được đẩy xuống ô dưới, tức A2=A1, A1= giá trị mới. cứ đẩy dần vậy.

PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" Then
    Application.EnableEvents = False
    With Target
        .Insert shift:=xlDown
        .Offset(-1).Select
    End With
    Application.EnableEvents = True
End If
End Sub
 
Cái này thì mình nhập trực tiếp vào ô đấy thì mới đẩy, còn mình chuyển từ chỗ khác thì nó ko đẩy được VD code của bạn mình cho ô A1=C1, khi mình nhập vào ô C1 thì các dữ liệu ở ô A1 không được đẩy xuống. Bạn giải quyết giúp mình với. Thank
 
Cái này thì mình nhập trực tiếp vào ô đấy thì mới đẩy, còn mình chuyển từ chỗ khác thì nó ko đẩy được VD code của bạn mình cho ô A1=C1, khi mình nhập vào ô C1 thì các dữ liệu ở ô A1 không được đẩy xuống. Bạn giải quyết giúp mình với. Thank
PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
With Target
    If .Address = "$C$1" Then
        [A1].Insert shift:=xlDown
        [A2] = .Value
        .Select
    End If
End With
End Sub
 
Ý em không phải nhập từ excel, vì ở đây mình cứ nhập giá trị rồi enter thì nó đẩy được. Nhưng giờ e đang làm một phần mền khác OPC liên kết với excel. phần mền đó đẩy các giá trị vào 1 ô ở đây là A1. Vì vậy ô A1 nó sẽ thay đổi giá trị theo phần giá trị bên OPC và e muốn mỗi khi giá trị A1 thay đổi thì giá trị nó đẩy xuống dưới giống như code ở trên. Mong a giúp với.
 
Ý em không phải nhập từ excel, vì ở đây mình cứ nhập giá trị rồi enter thì nó đẩy được. Nhưng giờ e đang làm một phần mền khác OPC liên kết với excel. phần mền đó đẩy các giá trị vào 1 ô ở đây là A1. Vì vậy ô A1 nó sẽ thay đổi giá trị theo phần giá trị bên OPC và e muốn mỗi khi giá trị A1 thay đổi thì giá trị nó đẩy xuống dưới giống như code ở trên. Mong a giúp với.
Nếu bài 13 không thực hiện được yêu cầu của bạn thì mình chia tay nhé. Hết khả năng rồi. Bạn kiên nhẫn đợi người có thể giúp bạn nhé.
Thân chào và chúc may mắn
 
Nếu bài 13 không thực hiện được yêu cầu của bạn thì mình chia tay nhé. Hết khả năng rồi. Bạn kiên nhẫn đợi người có thể giúp bạn nhé.
Thân chào và chúc may mắn
Cái bài 13 là gần đúng rồi, nhưng khi A1 Thay đổi thì nó đẩy xuống A2 và A2 thay đổi nó không đẩy dữ liệu xuống. Muốn đẩy xuống thì phải nhập các giá trị trực tiếp vào A1
 
Về thủ thuật có sẵn không đáp ứng được nha bạn, còn viết code thì bạn có thể tham khảo code này:
[gpecode=vb]
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, [A1]) Is Nothing Then
Target.Offset([A65535].End(3).Row) = Target
End If
End Sub
[/gpecode]
Anh giúp em với. E kết nối phần mên OPC với Excel được rồi, giờ em nhập dữ liệu OPC và giá trị trả về 1 ô bên excel (VD 1) em muốn mỗi khi nhập từ OPC, giá trị ở ô A1 cũng thay đổi theo và mỗi lần ôA thay đổi thì nó đẩy giá trị cũ xuống dưới giống như code ở trên vậy. Thank!
 
Anh nào cho em mail hoặc số điện thoại em hỏi cụ thể được không ạ?
 
Nhờ mọi người giúp đưa giữa liệu lên excel.

Em đang xuất dữ liệu từ OPC sang excel để lưu trữ, nhưng những 1000 dữ liệu nên không thể lưu vào 1000 vùng nhớ và đưa ra 1000 ô bên excel được. Giờ e muốn đẩy từng dữ liệu lên vào 1 ô, cứ 1s đẩy lên 1 dữ liệu vào ô A1. Giờ làm sao để mỗi lần e đẩy dữ liệu lên ô A1 thì giá trị cũ của ô A1 đẩy xuống ô dưới và ô A1 nhận dữ liệu mới. Cứ vậy tạo thanh một cột dữ liệu 1000 giá trị. Ai giúp mình với, Thank!
 
Em đang xuất dữ liệu từ OPC sang excel để lưu trữ, nhưng những 1000 dữ liệu nên không thể lưu vào 1000 vùng nhớ và đưa ra 1000 ô bên excel được. Giờ e muốn đẩy từng dữ liệu lên vào 1 ô, cứ 1s đẩy lên 1 dữ liệu vào ô A1. Giờ làm sao để mỗi lần e đẩy dữ liệu lên ô A1 thì giá trị cũ của ô A1 đẩy xuống ô dưới và ô A1 nhận dữ liệu mới. Cứ vậy tạo thanh một cột dữ liệu 1000 giá trị. Ai giúp mình với, Thank!
Mình thấy bạn hỏi vấn đề này mấy lần rồi, cũng có nhiều người viết code và hướng dẫn giúp bạn rồi. Nhưng hình như có hiểu nhầm về cách bạn diễn đạt.
Theo như bạn nói tại bài này thì dữ liệu xuất từ phần mềm OPC xuống Excel, có nghĩa là từ phần mềm OPC "đẩy" dữ liệu, và bạn lại muốn đẩy từng dữ liệu ... Cái này là hoạt động của phần mềm OPC chứ không phải là hoạt động của Excel.
Có vấn đề này bạn nên nói rõ: Khi phần mềm OPC hoạt động (đẩy dữ liệu) thì Excel đã hoạt động chưa? Hay là phần mềm OPC hoạt động xuất dữ liệu (export) xong thì mới trả ra kết quả là 1 file Excel?
Nếu trên windows cả 2 cùng hoạt động: cách 1 giây phần mềm xuất dữ liệu xuống Excel, thì cứ cách 1 giây trên file Excel có 1 dữ liệu (ví dụ tại A1). Có thể dùng code, bạn xem lại những code đã trả lời bạn ở mấy bài trước. Còn ngược lại thì bạn phải liên hệ người viết phần mềm OPC cho cơ quan của bạn để thiết lập chức năng Export này.
 
2 phần mền hoạt động cùng lúc. Dữ liệu em đẩy lên được rồi nhưng không biết làm sao để trên excel nó có thể nó cứ nhận được dữ liệu mới thì nó đẩy dần ra. anh giúp em được ko chỉ trên excel thôi.
 
Mình thấy bạn hỏi vấn đề này mấy lần rồi, cũng có nhiều người viết code và hướng dẫn giúp bạn rồi. Nhưng hình như có hiểu nhầm về cách bạn diễn đạt.
Theo như bạn nói tại bài này thì dữ liệu xuất từ phần mềm OPC xuống Excel, có nghĩa là từ phần mềm OPC "đẩy" dữ liệu, và bạn lại muốn đẩy từng dữ liệu ... Cái này là hoạt động của phần mềm OPC chứ không phải là hoạt động của Excel.
Có vấn đề này bạn nên nói rõ: Khi phần mềm OPC hoạt động (đẩy dữ liệu) thì Excel đã hoạt động chưa? Hay là phần mềm OPC hoạt động xuất dữ liệu (export) xong thì mới trả ra kết quả là 1 file Excel?
Nếu trên windows cả 2 cùng hoạt động: cách 1 giây phần mềm xuất dữ liệu xuống Excel, thì cứ cách 1 giây trên file Excel có 1 dữ liệu (ví dụ tại A1). Có thể dùng code, bạn xem lại những code đã trả lời bạn ở mấy bài trước. Còn ngược lại thì bạn phải liên hệ người viết phần mềm OPC cho cơ quan của bạn để thiết lập chức năng Export này.
Bác đâu rồi vào giúp em với, đang cần gấp.&&&%$R&&&%$R
 
Bác đâu rồi vào giúp em với, đang cần gấp.&&&%$R&&&%$R
Khả năng là code không có tác dụng trên Excel khi phần mềm OPC của bạn export dữ liệu xuống. Nếu có thể, bạn gửi Teamview vào hộp tin để mình xem thử, không được thì mình cũng chịu thua thôi vì phần mềm OPC bạn nói mình chẳng biết gì về nó.
 
Bác đâu rồi vào giúp em với, đang cần gấp.&&&%$R&&&%$R
Bạn cần gấp thì thuê gấp 1 chuyên gia về công ty coi vấn đề nằm chổ nào. GPE có ai thấy cái máy tính của bạn đâu
Thêm 1 giải pháp cho bạn. Cho chạy Sub sau khi đẩy dữ liệu. Mình mà hiểu chữ đẩy của bạn thì chết liền đó
PHP:
Sub Chen_Cell()
Dim Sarr()
If [A2] = Empty Then Exit Sub
Sarr = Range([A1], [A65536].End(3)).Value
[A2].Resize(UBound(Sarr)) = Sarr
[A1].ClearContents
End Sub
 
Khả năng là code không có tác dụng trên Excel khi phần mềm OPC của bạn export dữ liệu xuống. Nếu có thể, bạn gửi Teamview vào hộp tin để mình xem thử, không được thì mình cũng chịu thua thôi vì phần mềm OPC bạn nói mình chẳng biết gì về nó.
Vần đề đây không phải là phần mền OPC. OPC e cho đẩy dữ liệu vào như kiểu ô C1 đẩy vào ô A1 (vd A1=C1) thằng C1 thay cho OPC, thằng C1 thay đổi thì A1 thay đổi và giá trị trước đó của thằng A1 được đẩy xuống. Nói chung là không nhập trực tiếp trên excel, giờ làm sao mà excel biết ô đấy có giá trị thay đổi thì chuyển dần dữ liệu xuống, hoặc là cứ tần suất bao nhiêu thì ô tự chuyển dữ liệu xuống thành 1 cột dữ liệu.
Anh nào có Yahoo hay gì liên lac không giúp e với
 
Khả năng là code không có tác dụng trên Excel khi phần mềm OPC của bạn export dữ liệu xuống. Nếu có thể, bạn gửi Teamview vào hộp tin để mình xem thử, không được thì mình cũng chịu thua thôi vì phần mềm OPC bạn nói mình chẳng biết gì về nó.
Giờ bác cứ thay OPC bằng một ô bất kỳ trên excel để thay đổi giá trị là được VD: A1=C1, C1 để nhập giá trị còn A1 đẩy dữ liệu dần xuống. nhưng khi viết code thì thằng C1 không liên quan xem như nó ở phần mền khác.
 
Giờ bác cứ thay OPC bằng một ô bất kỳ trên excel để thay đổi giá trị là được VD: A1=C1, C1 để nhập giá trị còn A1 đẩy dữ liệu dần xuống. nhưng khi viết code thì thằng C1 không liên quan xem như nó ở phần mền khác.
Bạn đã thử bài #15 chưa? Đưa code bài #15 vào thử xem.
PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
With Target
    If .Address = "$C$1" Then
        [A1].Insert shift:=xlDown
        [A2] = .Value
        .Select
    End If
End With
End Sub
 

File đính kèm

Ý e không phải vậy. Cái ô C1 không đưa vào code vì nó là thay cho phần mền OPC để nhập dữ liệu. Giờ phải xem thay đổi của ô A1 để đẩy ra mà.
Bạn diễn giải hết khả năng chưa chắc người khác hiểu hết 50% ý của bạn. Nếu bạn quay lại được quá trình hoạt động của OPC và Excel trên máy bạn và up lên đây thì may ra có người hiểu. Mình có hỏi bạn có thể gửi Teamview (gửi ID và pass phần mềm Teamview trên máy bạn để cho người khác xem hoặc tác động lên máy bạn), không được thì cũng chịu thua thôi.
 
Ý e không phải vậy. Cái ô C1 không đưa vào code vì nó là thay cho phần mền OPC để nhập dữ liệu. Giờ phải xem thay đổi của ô A1 để đẩy ra mà.
Nếu bạn "chịu" để trống ô A1, khi nào ô A1 có dữ liệu mới bị "đẩy xuống", thì thử code này.
Bằng không thì "chạy".
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" Then
    If Target <> "" Then
        [A1].EntireRow.Insert
        [A1].Select
    End If
End If
End Sub
 
Nếu bạn "chịu" để trống ô A1, khi nào ô A1 có dữ liệu mới bị "đẩy xuống", thì thử code này.
Bằng không thì "chạy".
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" Then
    If Target <> "" Then
        [A1].EntireRow.Insert
        [A1].Select
    End If
End If
End Sub
Thế này chỉ là mình nhập trực tiếp từ ô A1, còn e đẩy từ phần mền khác sang thì không được. Anh xem video trên đấy, giúp em với.
 
Thế này chỉ là mình nhập trực tiếp từ ô A1, còn e đẩy từ phần mền khác sang thì không được. Anh xem video trên đấy, giúp em với.
Tôi không xem được Video, cũng không biết cách "đẩy' của "phần mền" khác ra sao.
Nếu ô A1 được nhập giá trị vào (bằng cách nào đó) mà code vẫn không chạy thì "thua" rồi.
 

File đính kèm

Lần chỉnh sửa cuối:
Vậy có cách nào để biết ô A1 đang thay đổi và đẩy nó xuống dưới như code trên không a hoặc là cứ chu kỳ bao nhiêu s thì nó lại lấy giá trị ô A1 đẩy dần xuống?
 
Vậy có cách nào để biết ô A1 đang thay đổi và đẩy nó xuống dưới như code trên không a hoặc là cứ chu kỳ bao nhiêu s thì nó lại lấy giá trị ô A1 đẩy dần xuống?
Tôi đã đính kèm file ở bài trên. khi nào bạn muốn "đẩy" thì "đẩy".
 
Tôi đã đính kèm file ở bài trên. khi nào bạn muốn "đẩy" thì "đẩy".
Video như thế này nè bác: một bên là phần mềm chạy (không biết có phải chạy hay không vì thấy giống như gõ số vào 1 ô trên phần mềm), bên kia là file Excel, tại A1 nhảy theo số thay đổi theo ô của phần mềm. Cái quan trọng ở đây là thanh trạng thái của Excel cho thấy luôn là Ready và không có gì thay đổi. Em vẫn chưa hiểu lắm, nếu phần mềm tác động lên Excel thì thanh trạng thái sẽ có thay đổi.
Bạn hoanghoa thử gõ tại ô C1 =A1 và chạy thử xem, nếu C1 có thay đổi theo A1 thì có thể dùng sự kiện Worksheet_Calculate thay vì Change.
 
Video như thế này nè bác: một bên là phần mềm chạy (không biết có phải chạy hay không vì thấy giống như gõ số vào 1 ô trên phần mềm), bên kia là file Excel, tại A1 nhảy theo số thay đổi theo ô của phần mềm. Cái quan trọng ở đây là thanh trạng thái của Excel cho thấy luôn là Ready và không có gì thay đổi. Em vẫn chưa hiểu lắm, nếu phần mềm tác động lên Excel thì thanh trạng thái sẽ có thay đổi.
Bạn hoanghoa thử gõ tại ô C1 =A1 và chạy thử xem, nếu C1 có thay đổi theo A1 thì có thể dùng sự kiện Worksheet_Calculate thay vì Change.
Ô C1 thay đổi theo Á mà
Thay vào nó báo lỗi anh có thể thay cho e đc không, e ko biết lập trinh VBS
 
Lần chỉnh sửa cuối:
Video như thế này nè bác: một bên là phần mềm chạy (không biết có phải chạy hay không vì thấy giống như gõ số vào 1 ô trên phần mềm), bên kia là file Excel, tại A1 nhảy theo số thay đổi theo ô của phần mềm. Cái quan trọng ở đây là thanh trạng thái của Excel cho thấy luôn là Ready và không có gì thay đổi. Em vẫn chưa hiểu lắm, nếu phần mềm tác động lên Excel thì thanh trạng thái sẽ có thay đổi.
Bạn hoanghoa thử gõ tại ô C1 =A1 và chạy thử xem, nếu C1 có thay đổi theo A1 thì có thể dùng sự kiện Worksheet_Calculate thay vì Change.
Giúp em với anh ơi, em đang cần gấp.
 
Anh Chị nào giúp em với. e liên kết 1 phần mền với excel, giờ nhập giá trị bên phần bên kia giá trị sẽ được đưa sang 1 ô A1 bên excel, em muốn mỗi lần giá trị mới đưa sang ô A1 thì giá trị trước đó được đẩy dần xuống hành dưới. Cứ vậy đẩy thành một cột dữ liệu. giờ em đang nhập như thế này: http://www.mediafire.com/?004rs6oh1ixzw6k
Ai giúp e với, Thank!
 
Anh Chị nào giúp em với. e liên kết 1 phần mền với excel, giờ nhập giá trị bên phần bên kia giá trị sẽ được đưa sang 1 ô A1 bên excel, em muốn mỗi lần giá trị mới đưa sang ô A1 thì giá trị trước đó được đẩy dần xuống hành dưới. Cứ vậy đẩy thành một cột dữ liệu. giờ em đang nhập như thế này: http://www.mediafire.com/?004rs6oh1ixzw6k
Ai giúp e với, Thank!
Hy vọng cái code này đúng ý của bạn
PHP:
Private Sub Worksheet_Calculate()
Application.EnableEvents = False
    [A2].Insert shift:=xlDown
    [A2] = [A1].Value
Application.EnableEvents = True
End Sub
 
Hy vọng cái code này đúng ý của bạn
PHP:
Private Sub Worksheet_Calculate()
Application.EnableEvents = False
    [A2].Insert shift:=xlDown
    [A2] = [A1].Value
Application.EnableEvents = True
End Sub
Cái này là chuẩn rồi này, Em diễn tả mãi mà các bác không hiều. Thank các bác đã nhiệt tình giúp đỡ.
 
Lỗi này là của bạn đấy. Cách hỏi và cách diễn tả làm mọi người đơ ra hết. Kinh nghiệm cho các bài hỏi sau này nhé.
Cũng không phải đâu anh, người ta không biết về code, em nhìn video mới nghĩ ra là dùng thử Calculate Event.
 
Cũng không phải đâu anh, người ta không biết về code, em nhìn video mới nghĩ ra là dùng thử Calculate Event.
Cho mình hỏi có thể dùng câu lệnh IF nếu đúng thì trả về 1 giá trị, còn không đúng thì giữ nguyên giá trị của ô đó trước đấy không? VD: IF ở ô A1 nếu đúng thì A1=B1, nếu sai thì giá trị A1 giữ nguyên. Thank
 
Cho mình hỏi có thể dùng câu lệnh IF nếu đúng thì trả về 1 giá trị, còn không đúng thì giữ nguyên giá trị của ô đó trước đấy không? VD: IF ở ô A1 nếu đúng thì A1=B1, nếu sai thì giá trị A1 giữ nguyên. Thank
Chủ đề cũ đã xong, muốn hỏi cái khác thì vào đúng chủ đề rồi hỏi nha
 
Cho em hỏi tiếp chủ đề củ, hôm trước đã chuyển ra thành một cột dữ liệu rồi, giờ em tạo bảng ở Sheet khác và muốn chuyển dữ liệu cột kia về, em dùng lệnh ở ô A2 =Sheet2!A2 (Sheet2 chứa cột dữ liệu) thì không được. Khi e xem lại thì khi nào có co giá trị mới đẩy xuống thì cái =Sheet!A2 cúng tăng lên Sheet!A3....nó cứ bằng cái giá trị được gán trước đó. a giúp em chuyển giá trị từ Sheet này qua Sheet khác bằng VBS với
 
Cho em hỏi tiếp chủ đề củ, hôm trước đã chuyển ra thành một cột dữ liệu rồi, giờ em tạo bảng ở Sheet khác và muốn chuyển dữ liệu cột kia về, em dùng lệnh ở ô A2 =Sheet2!A2 (Sheet2 chứa cột dữ liệu) thì không được. Khi e xem lại thì khi nào có co giá trị mới đẩy xuống thì cái =Sheet!A2 cúng tăng lên Sheet!A3....nó cứ bằng cái giá trị được gán trước đó. a giúp em chuyển giá trị từ Sheet này qua Sheet khác bằng VBS với
Có thể đặt công thức:
Mã:
=IF(INDIRECT("'Sheet2'!A"&ROW(A2))="","",INDIRECT("'Sheet2'!A"&ROW(A2)))
 
Cho em hỏi tiếp code nay:
Private Sub Worksheet_Calculate()
Application.EnableEvents = False
[A2].Insert shift:=xlDown
[A2] = [A1].Value
[B2].Insert shift:=xlDown (cai nay em them)
[B2] = [B1].Value (cai nay em them)
Application
.EnableEvents = True
End Sub
Giờ em muốn thêm cả cột B nữa, em vừa thêm thì 1 thằng thay đổi cả 2 thằng cùng đẩy dữ liệu xuống. giờ làm sao được a?
 
Cho em hỏi tiếp code nay:
Private Sub Worksheet_Calculate()
Application.EnableEvents = False
[A2].Insert shift:=xlDown
[A2] = [A1].Value
[B2].Insert shift:=xlDown (cai nay em them)
[B2] = [B1].Value (cai nay em them)
Application
.EnableEvents = True
End Sub
Giờ em muốn thêm cả cột B nữa, em vừa thêm thì 1 thằng thay đổi cả 2 thằng cùng đẩy dữ liệu xuống. giờ làm sao được a?

PHP:
Private Sub Worksheet_Calculate()
Application.EnableEvents = False
If [A1].Value <> Empty And [B1].Value <> Empty Then
   [A2:B2].Insert shift:=xlDown
   [A2:B2] = [A1:B1].Value
End If
Application.EnableEvents = True
End Sub
 
Anh cho em hỏi luôn Excel có hàm chuyển định dạng từ phút sang time ko a? VD: 121phút = 02:01:00(h)
 
Giải pháp excel gom gom

Xem thử file đính kèm
 

File đính kèm

Anh ơi bỏ hộ em cái chữ phút, để mình số thôi.
 
Bỏ chữ phút thì công thức =ROUND(C5/60,0)&":"&MOD(C5,60)
 
Thế này vẫn còn các trường hơp khác nữa 90=2:30 ạ.
 
em làm đc rồi cảm ơn anh giúp đỡ =ROUNDDOWN(D3/60,0)&":"&MOD(D3,60)
 
PHP:
Private Sub Worksheet_Calculate()
Application.EnableEvents = False
If [A1].Value <> Empty And [B1].Value <> Empty Then
   [A2:B2].Insert shift:=xlDown
   [A2:B2] = [A1:B1].Value
End If
Application.EnableEvents = True
End Sub
Anh cho em hỏi làm sao cho cái cột A1 chỉ chuyển dữ liệu xuống khi có A1 thay đổi. code trên thì bất kỳ ô nào trong Sheet này thay đổi thì cột nó lại dịch xuống 1 dòng. Giúp em với.
 
Sửa lịa code tí như vầy
Private Sub Worksheet_Calculate()
Application.EnableEvents = False
If [A1].Value <> Empty Then
[A1].Insert shift:=xlDown
[A2] = [A1].Value
End If
Application.EnableEvents = True
End Sub
 
Sửa lịa code tí như vầy
Private Sub Worksheet_Calculate()
Application.EnableEvents = False
If [A1].Value <> Empty Then
[A2].Insert shift:=xlDown
[A2] = [A1].Value
End If
Application.EnableEvents = True
End Sub
Vẫn không được a ợ, ô nào thay đổi giá trị thì nó cũng nhảy.
Vì khi A khác rỗng có giá trị thì lúc ấy bất kỳ ô nào thay đổi nó đều dịch xuống
 
Lần chỉnh sửa cuối:
Bạn gửi fiel lên đây thử xem. mình test ok mà
 
a gửi cho em xem được ko?
 

File đính kèm

Lần chỉnh sửa cuối:
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, [A1]) Is Nothing Then Target.Offset([A65535].End(3).Row) = Target End IfEnd SubCái code này gần đúng ý em. Các anh chị giúp em với. Em muốn làm ở ô B11. Mỗi khi điền giá trị vào B11 nhấn enter thì lập tức giá trị đó được đẩy xuống dưới nhau ( cột B). Em thử rồi nhưng mà nó cứ cách nhau 11 hàng ấy. Có cách nào để dữ liệu không bị cách nhau giống như code trên thực hiện với ô A1 không ạ Không phải insert dòng đâu các anh chị nhé
 
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, [A1]) Is Nothing Then Target.Offset([A65535].End(3).Row) = Target End IfEnd SubCái code này gần đúng ý em. Các anh chị giúp em với. Em muốn làm ở ô B11. Mỗi khi điền giá trị vào B11 nhấn enter thì lập tức giá trị đó được đẩy xuống dưới nhau ( cột B). Em thử rồi nhưng mà nó cứ cách nhau 11 hàng ấy. Có cách nào để dữ liệu không bị cách nhau giống như code trên thực hiện với ô A1 không ạ Không phải insert dòng đâu các anh chị nhé
Bạn xài thử code này
PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
If Not Intersect(Target, [B11]) Is Nothing Then
   Range(Target, [B65536].End(3)).Cut Target(2)
   [B11].Select
End If
Application.EnableEvents = True
End Sub
 

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

Back
Top Bottom