• ベストアンサー

まとめて計算式を設定したい

WinXPでエクセル2003を使用しています。 例えばC1からC100までのセルの中に 整数だけ入っている状態で(数はランダム) その全てのセルに「セルの数字÷13.5」 というように、範囲内にまとめて「÷13.5」という 計算式を付加したい場合、良い方法はありますか。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.7

100個程度では、ほとんど違いがありませんが、以下は、セル上のアクセスを減らしていますから、もし、1万とか2万になったら、その違いが出るはずです。 Sub FormulaChange() Dim myData As Variant Dim i As Long myData = Range("C1:C100").Value For i = LBound(myData, 1) To UBound(myData, 1)  If IsNumeric(myData(i, 1)) And Not IsEmpty(myData(i, 1)) Then    myData(i, 1) = "=" & myData(i, 1) & "/13.5"  End If Next i  Range("C1:C100").Formula = myData End Sub

その他の回答 (6)

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.6

Public Sub divied13_5() Dim r As Range Dim x As Range Set r = Range("C1:C100") For Each x In r x.Formula = "=" & x.Value & "/13.5" Next End Sub

  • ja7awu
  • ベストアンサー率62% (292/464)
回答No.5

「計算式を設定したい」ということだと思いますが、 それでしたら、こんな感じで如何でしょうか。 Sub SetFomula() Dim Rng As Range For Each Rng In Range("C1:C100")   If Not (Rng.HasFormula Or IsEmpty(Rng)) And IsNumeric(Rng) Then     Rng.Formula = "=" & CStr(Rng.Value) & "/13.5"   End If Next Rng End Sub

回答No.4

ご質問の内容はC列の整数に「÷13.5」という文字列を付加したいということでしょうか? (多分)もっとも簡単なVBAコードは次の通りです。 Sub StrAdd() Dim I As Integer Dim S As String S = "÷13.5" For I = 1 To 100 Cells(I, 3).Value = Cells(I, 3).Value & S Next End Sub ただひたすら”÷13.5"を付けていくだけです。 もし、ご質問の内容が、C列の数字をいっぺんに13.5で割るという処理をするのであれば、 何処でもいいので、適当なセルに13.5と入力し、そのセルをコピーします。 次にC1:C100の範囲を選択して、右クリックのメニューから「形式を選択して貼り付け」を選び、出てきたメニュー「演算」→「除算」をチェックしてOKします。 これで、C1:C100のセルがすべて13.5で割った数字に変わります。

juzz
質問者

補足

ありがとうございます。 後者の回答が欲しかったものです。 でもこの方法だと、元の数字が分からなく なってしまうので、欲をいえばC列のセルの中に 13.5で割った過程を残す方法はあるのでしょうか。 お願いします。

  • iiikkk
  • ベストアンサー率37% (92/247)
回答No.3

#1です。 ミスです。 ダブルクォートでしたね。 =C1&"÷13.5"

回答No.2

セルD1に「=A1&"÷135"」と入力してD100までコピーし、 D列をコピーしてC列に「値」形式で貼り付け。 では?

  • iiikkk
  • ベストアンサー率37% (92/247)
回答No.1

VBAでやればいいのでしょうが、私はやり方を知らないので下記のようにしてます。 D1セルに =C1&'÷13.5' として、D1セルをD100までコピーします。 D列に出来たものをC列に値コピーします。

juzz
質問者

補足

早速ありがとうございます。 この方法でもOKですが C列のみで行う方法もしくはVBAを望みます。

関連するQ&A

専門家に質問してみよう