2016-05-14 165 views
0

我希望你有一些樂趣。我需要特定的東西。需要excel的公式,單獨爲每個數字減去數字「9」並

首先,我必須解釋我在做什麼。我在零售商店使用簡單的產品價格編碼,因爲我不想讓人們知道他們自己的真實價格。所以我改變原來的數字到另一個減去每個數字9。 通常情況下,我會手動記下每種產品的編碼所有價格。

所以..例如號碼10是89.(9-1 = 8)和(9-0 = 9) 其它實例:

  1. $ 128 = 871
  2. $ 75 = 24
  3. $ 236 = 763
  4. $ 9 = 0

最後我把2點九(9)編纂價格的開始也,蠱惑人心誰可能會認爲,數字可能是價格。

所以我以前使用的實例是這樣的:

  1. 99871(裝置128 $)
  2. 9924(意味着$ 75),
  3. 99763(意味着$ 236)
  4. 990(指$ 9)

請記住,我需要2(2)9個9之前的實際價格。真正的價格永遠不會從0開始,因此,開始時的九點只是爲了迷惑人們。

好的。所以,現在你明白了,第二部分就來了。 我有一個excel連同我的數百個產品,包括價格,描述等。我決定是時候使用打印機,並開始從excel打印這些信息。我有一個軟件可以做到這一點,但首先我需要在excel中編輯價格。

有趣的部分開始時,我想將已寫在我的Excel文檔中的實際價格轉換爲新的列AUTOMATICALLY。這樣我就不必再爲我將來添加的新舊項目以編纂形式重新輸入所有價格。

有人可以幫助我嗎?它甚至有可能嗎?

我嘗試過使用= A1-9999,但它只適用於2個字符。因爲如果真實價格是5,我會得到3個9:9994(代碼)。如果價格是234,我將只獲得1個9 9765(代碼)。而這是我需要首先擁有兩個九人的條件。

非常感謝您的高級!

+0

更好的問題是,爲什麼你想要做到這一點。那個問題之後的 – dinotom

+0

,這個作品是否有最大數量的字符?有物品價值100萬美元,10000美元,還是100美元。您的價格是否有小數點,還是總是整數? –

+0

@dinotom我只是需要它。我是否還必須解釋其家族企業,並且有員工學習了這些代碼? 請,我需要幫助,這不是爲了改變我的想法。謝謝。 – user3741840

回答

0

我將使用助手單元,但是如果你願意,可以將它全部轉儲到一個單元中,因爲你只處理4個字符。

就本例而言,我假設您的原始價目表以B11開頭。

=IFERROR(9-MID($B11,COLUMN(A1),1),"") 

把它放在D11中,然後複製到右邊三次,所以你從D11到G11。該公式從您的價格中剝離出1個字符,並從9中減去該字符。當您轉到下一列時,它會自行重複。如果你沒有那麼多的字符,它會返回「」。

在C11您將基於使用這個公式相鄰的4列建立您的號碼:

="99"&D11&E11&F11&G11 

它放置在前面99再從相鄰的4列數字相加。

選擇單元格C11到G11,然後在您需要的數據列旁邊向下複製和粘貼。

另一種更簡潔的方法是:

=REPT(9,LEN(B11)+2)-B11 
+0

如果你在一個單元格中需要它,請採取第一種形式並將其替換爲第二個等式。還要將列(A1)更改爲1,然後將2更改爲3,最後每次將第一個方程移至第二個方程時,最後輸入4。 –

0

雖然你所要求的配方,我建議VBA程序,這似乎對我來說非常方便。 您必須打開VBE並插入一個模塊並複製該程序。更改代碼行,以適應您對紙張等的要求。

Sub NumberCode() 
    Dim c As Range 
    Dim LR As Integer 
    Dim numProbs As Long 
    Dim sht As Worksheet 
    Dim s As Integer 
    Dim v As Long 
    Dim v1 As Long 
    Set sht = Worksheets("Sheet1") ' change as per yr requirement 
    numProbs = 0 
    LR = sht.Cells(Rows.Count, "A").End(xlUp).Row 
    For Each c In sht.Range("A1:A" & LR).Cells 
    s = Len(c) 
    v = c.Value 
    v1 = 99 
    For s = 1 To Len(c) 
     v1 = v1 & (9 - Mid(c, s, 1)) 
    Next 
    c.Offset(0, 1).Value = v1 
    v1 = 99 
    numProbs = numProbs + 1 
    Next 
    MsgBox "Number coding finished" 
End Sub 

樣張表結果附在下面。

Sample sheet

0

也許我失去了一些東西,但是簡單地說:

=REPT(9,2+LEN(A1))-A1

似乎對我好。

Regards

相關問題