vo huu dung
Thành viên mới
- Tham gia
- 22/7/21
- Bài viết
- 1
- Được thích
- 0
-,Thêm khai báoem cần xuất kq từ mảng như trong hình : View attachment 262933 ra 1 vùng của bảng tính thì làm sao ạ , ai sửa hộ em code với
Sub bieudotuongtac()
Dim row1%, col1%, row2%, col2%
Dim k&, v&
Dim w#, sigmai#, sigmascu#, sia#, sid#, ho#, xi#
k = Range("B" & Rows.Count).End(xlUp).Row
v = Cells(33, Columns.Count).End(xlToLeft).Column
w = Cells(21, 8).Value
sigmai = Cells(11, 5).Value
For col1 = 3 To v
For row1 = 34 To k
sigmascu = Cells(22, 8).Value
sia = w / (-sigmai / (sigmascu / (1 - w / 1.1)) + 1)
sid = w / (sigmai / (sigmascu / (1 - w / 1.1)) + 1)
ho = Cells(28, col1).Value
xi = Cells(row1, 2).Value
Cells(row1, col1) = xi / ho
If Cells(row1, col1) > sia Then
Cells(row1, col1) = sia
ElseIf Cells(row1, col1) < sid Then Cells(row1, col1) = sid
Else
Cells(row1, col1) = xi / ho
End If
Next
Next
Dim r&, c&
ReDim arr(1 To k, 1 To v)
For row2 = 34 To k
r = r + 1
For col2 = 3 To v
c = c + 1
arr(r, c) = (sigmascu / (1 - w / 1.1)) * (w / Cells(row2, col2).Value - 1)
Next
c = 0
Next
Range("C94").Resize(k - 34 + 1, v - 3 + 1).Value = arr
End Sub
cảm ơn anh nhiều em làm được rồi ạ-,Thêm khai báo
- Sửa lại cú pháp Redim arr
- Sửa lệnh gán giá trị các phần tử mảng arr
- và sửa cú pháp chép mảng ra ô C94
=> Toàn bộ code:
Rich (BB code):Sub bieudotuongtac() Dim row1%, col1%, row2%, col2% Dim k&, v& Dim w#, sigmai#, sigmascu#, sia#, sid#, ho#, xi# k = Range("B" & Rows.Count).End(xlUp).Row v = Cells(33, Columns.Count).End(xlToLeft).Column w = Cells(21, 8).Value sigmai = Cells(11, 5).Value For col1 = 3 To v For row1 = 34 To k sigmascu = Cells(22, 8).Value sia = w / (-sigmai / (sigmascu / (1 - w / 1.1)) + 1) sid = w / (sigmai / (sigmascu / (1 - w / 1.1)) + 1) ho = Cells(28, col1).Value xi = Cells(row1, 2).Value Cells(row1, col1) = xi / ho If Cells(row1, col1) > sia Then Cells(row1, col1) = sia ElseIf Cells(row1, col1) < sid Then Cells(row1, col1) = sid Else Cells(row1, col1) = xi / ho End If Next Next Dim r&, c& ReDim arr(1 To k, 1 To v) For row2 = 34 To k r = r + 1 For col2 = 3 To v c = c + 1 arr(r, c) = (sigmascu / (1 - w / 1.1)) * (w / Cells(row2, col2).Value - 1) Next c = 0 Next Range("C94").Resize(k - 34 + 1, v - 3 + 1).Value = arr End Sub
vâng ạTrước tiên phải đọc nội quy và sửa tiêu đã.