[算表] vba一行改成多行
軟體:excel
版本:2019
使用chatgpt寫VBA
只寫一行是正確的
請他運算整張算表就開始錯誤連篇..
希望版上大大協助
Sub FillVBasedOnOffset()
Dim rngNumbers As Range
Dim rngOutput As Range
Dim targetNumber As Integer
Dim outputCount As Integer
' 設置數字範圍和輸出範圍
Set rngNumbers = Range("I1:AL1")
Set rngOutput = Range("I2:AL2")
' 儲存 H2 的數值
Dim h2Value As Variant
h2Value = Range("H2").Value
' 清空輸出範圍
rngOutput.ClearContents
' 獲取目標數字和輸出次數限制
targetNumber = Range("H2").Value + 2
outputCount = Range("B2").Value
' 填充V
For Each cell In rngNumbers
If cell.Value = targetNumber Then
If outputCount > 0 Then
cell.Offset(1).Value = "V"
outputCount = outputCount - 1
End If
targetNumber = targetNumber + 3
End If
Next cell
' 恢復 H2 的數值
Range("H2").Value = h2Value
End Sub
https://imgur.com/44RX0oR
實際用VBA操作後2列是正確的
如何改成可以運行在第2列~第58列
目標
開始日期+2則打V 之後每個三天打V(打勾日期+3)
打勾的次數不超過B欄的數字
如果有可以用公式的解法更好(可以在googlesheet上執行)
但是CHATGPT寫不太出來...
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 114.41.61.207 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Office/M.1685389548.A.DD9.html
※ 編輯: instarfree (114.41.61.207 臺灣), 05/30/2023 03:46:35
→
05/30 06:45,
1年前
, 1F
05/30 06:45, 1F
→
05/30 06:46,
1年前
, 2F
05/30 06:46, 2F
→
05/30 06:46,
1年前
, 3F
05/30 06:46, 3F
→
05/30 06:46,
1年前
, 4F
05/30 06:46, 4F
→
05/30 06:46,
1年前
, 5F
05/30 06:46, 5F
→
05/30 06:51,
1年前
, 6F
05/30 06:51, 6F
→
05/30 06:52,
1年前
, 7F
05/30 06:52, 7F
→
05/30 06:52,
1年前
, 8F
05/30 06:52, 8F
→
05/30 06:52,
1年前
, 9F
05/30 06:52, 9F
→
05/30 06:54,
1年前
, 10F
05/30 06:54, 10F
→
05/30 06:56,
1年前
, 11F
05/30 06:56, 11F
→
05/30 07:00,
1年前
, 12F
05/30 07:00, 12F
→
05/30 07:02,
1年前
, 13F
05/30 07:02, 13F
→
05/30 07:02,
1年前
, 14F
05/30 07:02, 14F
→
05/30 07:02,
1年前
, 15F
05/30 07:02, 15F
推
05/30 09:29,
1年前
, 16F
05/30 09:29, 16F
→
05/30 10:08,
1年前
, 17F
05/30 10:08, 17F
討論串 (同標題文章)
Office 近期熱門文章
PTT數位生活區 即時熱門文章