這裏是我的情況:VBA - 如果列B中的單元格不是空白,則列A = 1
列A爲空。 B列是客人的房間號碼 C列是該房間中客人的姓名
我想要統計有多少房間被佔用。所以我把計數公式,但結果是0。我不知道爲什麼..
下面是代碼:
Sheets("Champagne").Select
Range("B2").AutoFill Destination:=Range("B2:B" & Cells(Rows.Count, 2).End(xlUp).Row)
LastRow = Range("A2").End(xlDown).Row
Cells(LastRow + 2, "A").Formula = "=SUM(A2:A" & LastRow & ")"
LRowA = [A4200].End(xlUp).Address
Range("A:A").Interior.ColorIndex = xlNone
Range("A2:" & LRowA).Interior.ColorIndex = 33
Range("A:A").HorizontalAlignment = xlCenter
所以後來我試圖把一個公式,如果B柱說作爲任何數字(房間號),它將在列A中算作1。然後在列A末尾加上一個總和。
這是我試圖放置的代碼,但它將123456放入C欄。
Sheets("Champagne").Select
For Each Cel In Range("B2:B" & Cells(Rows.Count, 2).End(xlUp).Row)
If Cel.Value <> "" Then Cel.Offset(1, 0).Value = "123456"
Range("A2").AutoFill Destination:=Range("A2:A" & Cells(Rows.Count, 2).End(xlUp).Row)
LastRow = Range("A2").End(xlDown).Row
Next
Range("B2").AutoFill Destination:=Range("B2:B" & Cells(Rows.Count, 2).End(xlUp).Row)
LastRow = Range("A2").End(xlDown).Row
Cells(LastRow + 2, "A").Formula = "=SUM(A2:A" & LastRow & ")"
LRowA = [A4200].End(xlUp).Address
Range("A:A").Interior.ColorIndex = xlNone
Range("A2:" & LRowA).Interior.ColorIndex = 33
Range("A:A").HorizontalAlignment = xlCenter
如果你有第一個代碼的答案,我把它以及....
一個簡單的工作表'COUNTIF'似乎更合適。 – Jeeped
@Jeeped,你可以把它的代碼在VBA的數量if..please ..作爲一個答案.... – JohanEs
如果列A是空的列B&C可能會或可能不會被填充,那麼沒有確定將計數放在A列中的哪個位置。選擇另一個填充房間數據範圍的列,而不管房間是否已滿。將樣本數據與預期結果一起提供。房間號碼**總是**號碼還是一些文字(例如101A)? – Jeeped