簡體   English   中英

如何轉置行值(忽略空格)

[英]How to transpose row values (ignoring blanks)

我正在嘗試編寫一個代碼,該代碼將每個帳戶使用的產品放入“產品摘要”列。

例如,對於C2'XYZ Inc'上的公司,其產品是widget1(H2),widget2(I2)和widget4(K2)。 我想將這些值(忽略空格)轉置到G列中。因此,單元格G2將具有產品widget1,單元格G3將具有widget2,而單元格G4將具有widget4。

同樣適用於C5公司。

是否可以使用VBA進行編碼?

在此處輸入圖片說明

這是我發現的東西,但出現編譯錯誤“無效的外部過程”

Sub RowTranspose()
Dim c As Range, v

'find last-used cell in ColG
Set c = Cells(Rows.Count, "G").End(xlUp)

With c.Offset(-3, 0)
    v = .Resize(4, 1).Value
    .Resize(4, 1).ClearContents 
    .Resize(1, 4).Value = Application.Transpose(v)
End With
End Sub

Stackoverflow並不是一個用戶無需您費力就為您編寫代碼的站點。 但是,我可以為您提供程序應做的邏輯概述。 如果您編寫代碼並將其添加到原始問題中,我們將為您提供進一步的幫助。

  • 定義變量
  • 對於您要與之合作的每個公司:
    • 掃描該行。 如果單元格中有值,則將該值添加到數組中。 如果沒有,請跳過。
    • 將String數組中的項目復制到所需的列,一次復制一個單元格。

就是這樣 可能還有一百萬種其他方法可以更有效地執行此操作,但這是實現此目的的直觀方法。

暫無
暫無

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

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