2016-10-20 11 views
0

まずオフに基づいて3に一つの値を変更するには、私は本当に私はので、私はおそらく、私は現在の値のリストを変更するには、マクロを使用していますエクセルVBAは、次の列

何かを明らかに行方不明ですやっているのか分かりません。おそらくインデックスマッチ関数を使って同じことをすることができますが、マクロは私たちの目的のためにうまく機能します。

私は今問題が生じていません。式はaをxとbに置き換えます。しかし、私は実際には3つの変数である新しい変数を持っています。

この新しい変数は、その横の列に含まれる値に基づいて3つの値のいずれかに置き換える必要があります。これは私が通常の値に使用するものです。

Columns("C:C").Select 
Range("C1").Activate 
Selection.Replace What:="D", Replacement:="8D", LookAt:=xlPart, _ 
    SearchOrder:=xlByRows, MatchCase:=True, SearchFormat:=False, _ 
    ReplaceFormat:=False 
Selection.Replace What:="E", Replacement:="8E", LookAt:=xlPart, _ 
    SearchOrder:=xlByRows, MatchCase:=True, SearchFormat:=False, _ 
    ReplaceFormat:=False 

は、しかし、私は交換する必要がある「 - 」列Dは1が含まれているかどうかに応じて、「余分2」または「余分3」、「エクストラ1」のいずれかで、 2つ、または3つの同じ行にあります。私は単純に= c2 & "" & d2の余分な列を作ることで私の問題は解決しますが、このプロセスを他の人にとっては非常に簡単にするために、すべてを1つのキーストロークに保ちたいと思います。もし私がそれに値するのであれば、私を侮辱してください。

data pic

+0

私はあなたに正直である、私はあなたの質問の範囲を理解していない。私はあなたが達成しようとしているものを視覚化しているようには見えません。未処理のデータの写真を掲載し、実行しているコードの理想的な出力を投稿できますか? – Tyeler

+0

余分な列を使用する(例: 'SUBSTITUTE(SUBSTITUTE(C1、" D "、" 8D ")、" E "、" 8E ")、" - "、" extra "&D1)'の式)ユーザーが現在使用している1回のキーストロークを必要としないことを意味します。 – YowE3K

+0

ここにデータのために働いているのは、 |名前の名前| 10/23/2016 | [| 1 | namey namerson | 10/23/2016 | {1} | namerijsan | \t 2016年10月23日|〜| 1 | NAMIC | 2016年10月23日| + \t | 1 問題が取り囲んでいるが、このデータは、(私が常にではなく)毎日輸入しなければならないことであると、すべてのコードを変更する必要があります。 + = 12N〜=余分なスタッフ 最後の列には時刻(日、夜、夜)に関する情報があり、特定の値と組み合わせた情報を必要とします(〜のような値ですが、+のような値はありません) インデックス(match())を使って同様のことをする方法を教えてください。しかし、私はスタッフが値を変更できるようにしたいと思っています。 –

答えて

0

だから、これはおそらく、物事を行うには非常に非効率的な方法ですが、私はただ単に、元のデータの上にそれをコピーし、余分な列を作成し、そこに連結を行うためにいくつかの行を書いたと。