[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『VBA:数字をつなげる』(わからず)
A1,A2,A3,B1,B2,B3,C1,C2,C3と同じセルにある値を A1-A3 B1-B3 C1-C3
としたいのですが、どなたかご教授お願いしますm(_ _)m
>A1-A3 これの意味が分かりません・・・(-_-;)
Range("A1").value = Range("A1").value & Range("A2").value & Range("A3").value
とか?
(INA)
A1,A2,A3,B1,B2,B3,C1,C2,C3←セルA1に矢印の値が入力されていて、その値を
(セルA1)にA1-A3 ←A1〜A3とゆー意味です
(セルA2)にB1-B3
(セルA3)にC1-C3
と入力したいのです。
(わからず)
ひとまず、 A1,A2,A3,B1,B2,B3,C1,C2,C3 を、カンマ区切りで1セルごとに分けては如何でしょうか?
そうすれば、 (A1が同じセルだと面倒なので、A→A2,B→A3 にしますが。)
for i = 1 to 100 select case Left(Cells(1,i).Value,1) case "A" Range("A2").Value = Range("A2").Value & "-" & Cells(1,i).Value case "B" Range("A3").Value = Range("A3").Value & "-" & Cells(1,i).Value End select next i
のようにすると、 A2 → A1-A2-A3 A3 → B1-B2-B3 と入力されますので、
Left(A2,3) & right(A2,2) のように、文字列処理で出来ると思います。
(INA)
例えばセルA1に A1,A3,A5,A6,A7,B1,B2,B3,C1,C3,C4,C5とランダムな数値が入力されていて
まとめれる数値をまとめて出力するようにしたいです。
<出力結果>
セルA2→A1,A3,A5-7
セルA3→B1-3
セルA4→C1,C3-5
とゆー結果になりようにしたいです。大変ご無理をいいますが、ご教授よろしく
願いしますm(_ _)m
そうすると、いっきに処理するのは厳しいので、(←私には) 作業用のシートを用意して、いったん以下のように抽出しては如何でしょうか? A B C 1 A B C ←ここは記号欄として入力しておく 2 1 1 1 3 3 2 3 4 5 3 4 5 6 5 6 7
そうすれば、数値の連続性が判別しやすいので、 列ごとに、行方向にループ処理すれば、出来るように思えます。
(INA)
>A1-5,7,9,B1-3,5,C1-3 いままでの説明にない表現ですね。
どのように抜き出したいかによって変わってきますが、 数値と - と , を "" に 「置換」 して、 削除しては如何でしょうか?
A1-5,7,9,B1-3,5,C1-3 → ABC
そして、 dim i as long
for i = 1 to len("ABC") msgbox mid("ABC",i,1) next i
のようにすればよいと思います。
(INA)
-と,を置換して削除すると、A1579B135C13となりませんか? (わからず)
>数値と - と , を "" に 「置換」 して、
です。
ところで [[20040415165539]] とは、関係ない処理なのですか?
(INA)
でも、こちらの説明とずいぶん違いますよね?
なにが本当の質問なんですか・・・? (-_-;)
(INA)
と、こちらの質問では提示されているデータが、かなり異なっております。
プログラムなので、データを正確に教えて頂かないと 何の役にも立たないし、あとから「じつは〜でした」といわれると すべて作り直しになる可能性も大いにあります。
両方の質問の内容で、本当に正しいことを再度、説明し、 どちらの質問で、質疑を継続すればよいのか、ご指示下さい。
(INA)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.