簡體   English   中英

使用VB.NET合並Excel單元格問題

[英]Merge excel cells issue using VB.NET

大家好,謝謝! 我有一些無法解決的奇怪異常。

盡管我不知道這不是我的第一個程序!

我正在編寫一個應用程序,它要填充一個Excel工作簿。 每次嘗試合並單元格時,都會收到錯誤消息。 我已經一遍又一遍地檢查了,只是想不通。 我代碼中的所有內容都應該可以正常工作。 xl應用程序,工作簿,工作表和范圍都已聲明。 最奇怪的是,如果在代碼運行期間,我手動進入excel工作表(在用msgbox暫停程序之后,然后選擇某個單元格(無論如何),代碼運行就很好了:(((

我沒有大聲地添加圖像,所以這里是代碼-復制粘貼。

btn點擊代碼:

Private Sub btnCreatPriceQuote_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnCreatPriceQuote.Click

    oXL.Visible = False

    Dim indexForCopy As Integer

    'few commands for faster run in the xl WB
    XlFasterRun()

    'Replace pricequote sheet with its format to avoid overwrite
    PriceQuoteRenew()

    'Decalre rows for add details on the BAMAY
    DecalreFirstRow()

    FillPriceQuoteTable()


    TillIndex = 39
    EmptyCellIndex = 13

來自模塊的聲明:

`Public Sub DecalreFirstRow()

    rng1thcol1thLinePQ = shPriceQuote.Range("A75:D75")
    rng2thcol1thLinePQ = shPriceQuote.Range("E75:F75")
    rng3thcol1thLinePQ = shPriceQuote.Range("G75:H75")
    rng4thcol1thLinePQ = shPriceQuote.Range("I75:J75")
    rng5thcol1thLinePQ = shPriceQuote.Range("K75:L75")
    rng6thcol1thLinePQ = shPriceQuote.Range("M75:N75")
    rng7thcol1thLinePQ = shPriceQuote.Range("O75:T75")
    rng8thcol1thLinePQ = shPriceQuote.Range("U75:X75")

    rng1thcol1thLineCF = shCusFile.Range("A12:G12")
    rng2thcol1thLineCF = shCusFile.Range("H12:K12")
    rng3thcol1thLineCF = shCusFile.Range("L12:O12")
    rng4thcol1thLineCF = shCusFile.Range("P12:S12")
    rng5thcol1thLineCF = shCusFile.Range("T12:W12")
    rng6thcol1thLineCF = shCusFile.Range("X12:AA12")
    rng7thcol1thLineCF = shCusFile.Range("AD12:AI12")
    rng8thcol1thLineCF = shCusFile.Range("AJ12:AN12")

End Sub

`發生異常的公共子目錄:

公共子FillPriceQuoteTable()

    With rng1thcol1thLinePQ
        .Select()
        .Value = rng1thcol1thLineCF.Value
        **.Merge()** 
    End With

    With rng2thcol1thLinePQ
        .Select()
        **.Merge()**
        .Value = rng2thcol1thLineCF.Value
    End With

    With rng3thcol1thLinePQ
        .Select()
        **.Merge()**
        .Value = rng3thcol1thLineCF.Value
    End With

    With rng4thcol1thLinePQ
        .Select()
        **.Merge()**
        .Value = rng4thcol1thLineCF.Value
    End With

更換:

rng.Merge()

帶有:

rng.mergecells=true.

暫無
暫無

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

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