簡體   English   中英

VBA運行時錯誤424

[英]VBA run time error 424

我是VBA的新手。 當我嘗試設置value1 = runtime error 424開始。 似乎不太可能弄清楚這一點。 我正在處理導入的數據。 負數將導入,CR后綴將移至相鄰列。 我需要Excel才能識別CR,並使它旁邊的單元格為負,或者我現在嘗試的是在第三列中返回負值。 數據會跳過行,因此我只需要翻譯真實的負數,其他所有內容都應返回空白。

我曾經嘗試過使用if公式進行條件格式設置,該條件效果很好,但是當轉換為VBA時,相對的單元格引用和公式比較混亂,在格式更改的情況下,用戶不會感到厭煩,

包括了代碼的問題部分。

在此先感謝任何可以提供幫助的人!

    Application.ScreenUpdating = False

Sheet2.Range("A1:H9999").ClearContents

Dim vFileName
Dim MyWorkbook As Workbook
Dim NameColumn As Range
Dim value1 As Range
Dim value2 As Range
Dim value3 As Integer


vFileName = Application.GetOpenFilename("Text Files (*.txt),*.txt")



MyWorkbook.Activate
Application.DisplayAlerts = False
ActiveWindow.Close
Set value1 = Worksheet.Range("K113:K249")
Set value2 = Worksheet.Range("H113:H249")
Set NameColumn = Worksheet.Range("I113:I249")
If NameColumn.Value = "CR" Then
    value1.Value = value1.Value * -1
    ElseIf value2.Value = 0 Or "" Then
    value1.Value = ""
    Else: value1.Value = value1.Value
End If

除了ActiveWindow.Close的問題之外,我看不到您在哪里為Worksheet賦予了任何價值。

我將刪除ActiveWindow.Close(該怎么辦?),並通過ActiveSheet.Range替換Worksheet.Range的出現。

您已經關閉了窗口

ActiveWindow.Close

然后,您嘗試將范圍變量set為現在關閉的工作簿中的某些內容。

刪除該行和/或將其移至代碼末尾。

正如LittleBobbyTables指出的那樣:

ElseIf value2.Value = 0 Or "" Then

無效。 用這個:

ElseIf value2.Value = 0 Or value2.Value = "" Then

Else: value1.Value = value1.Value

Else之后擺脫結腸

Else value1.Value = value1.Value

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM