Tôi đã hy vọng viết một Macro thực hiện nhiệm vụ lặp đi lặp lại cho tôi nhưng việc nhập VBA khó hơn dự kiến. Tôi sẽ học cách lập trình các macro cho excel khi tôi có thời gian vì nó có vẻ cực kỳ hữu ích, nhưng tôi không thể dành 5 đến 12 giờ trong tuần này.Viết công thức vào ô tùy thuộc vào giá trị ô khác
Có thể ai đó ở đây có thể trợ giúp!
Tôi có một vài file excel mà làm theo mô hình này:
Column C - Column D
--------------------
text | (empty)
number | (empty)
number | (empty)
text | (empty)
number | (empty)
text | (empty)
text | (empty)
number | (empty)
text | (empty)
number | (empty)
đâu văn bản và số lượng thay thế ngẫu nhiên cho một vài ngàn tế bào. Tôi cần cột D để giữ, khi cột C là một con số, sự khác biệt với số trước, nếu không nó phải ở lại trống:
Column C - Column D
--------------------
text | (empty)
3 | (empty)
14 | (=C3-C2) : 11
text | (empty)
16 | (=C5-C3) : 2
text | (empty)
text | (empty)
21 | (=C8-C5) : 5
22 | (=C9-C8) : 1
Vì vậy, các thuật toán là:
var previousNumberCell
var i = 1
for all (selected) cells/rows
if (Row(i).column(C) holds number) {
Row(i).column(D).value = "=C"+i+"-"C"+previousNumberCell
previousNumberCell = i;
}
i++
End
Tôi không quan tâm nếu cho ô đầu tiên hoặc ô cuối cùng thì nó không hoạt động.
Cảm ơn bạn rất nhiều vì đã giúp đỡ hoặc nếu bạn có thể chỉ cho tôi nơi tôi có thể tìm thấy câu trả lời cho điều này. EDIT: đây là một phiên bản đơn giản của vấn đề, có 2 điều tôi không biết làm thế nào tốt với excel macro: chọn một tế bào, và cho biết nếu tế bào là một số ... cho hồ sơ, số các ô đã được chuyển đổi từ văn bản sang định dạng số.
@Daren thử ngay. –
Tại dòng nào? Nó đang làm việc để hoàn thành vào cuối của tôi. –
Bạn đã thực hiện * tất cả * các thay đổi (thêm một vài ký hiệu và cũng loại bỏ '.Text' khỏi các dòng thiết lập các công thức). –