Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


10844 / 13644 ツリー ←次へ | 前へ→

【19603】セルに入力したい数式が指定できない びびこ 04/11/10(水) 21:58 質問[未読]
【19605】Re:セルに入力したい数式が指定できない かみちゃん 04/11/10(水) 22:32 回答[未読]
【19606】Re:セルに入力したい数式が指定できない Kein 04/11/10(水) 22:34 回答[未読]
【19607】Re:セルに入力したい数式が指定できない びびこ 04/11/10(水) 22:48 お礼[未読]
【19615】Re:セルに入力したい数式が指定できない びびこ 04/11/11(木) 11:39 質問[未読]
【19616】Re:セルに入力したい数式が指定できない Jaka 04/11/11(木) 11:51 回答[未読]
【19618】Re:セルに入力したい数式が指定できない びびこ 04/11/11(木) 13:15 お礼[未読]
【19617】Re:セルに入力したい数式が指定できない かみちゃん 04/11/11(木) 12:36 回答[未読]
【19619】Re:セルに入力したい数式が指定できない びびこ 04/11/11(木) 13:17 お礼[未読]

【19603】セルに入力したい数式が指定できない
質問  びびこ  - 04/11/10(水) 21:58 -

引用なし
パスワード
   はじめまして。どうしても入れられないのでどなたか教えてください!!
A1〜B1のセルには文字列があり、C1セルにA1〜B1の値を利用した文字列を
表示する、といったマクロを組んでいます。
その表示したい文字列に、「;」が入っていることでエラーが起こり、
先に進めません・・

C1のセルに ="B;"&A1&"_"&B1& という式を入れて、結果、「B;あ_い」という
文字列を表示させたいのです。
データ簡素にすると下記のようなものです。
これが大量にあるのでマクロで自動処理をしたいのですが・・

  A  B  C
1 あ い  B;あ_い
2 か き 
3 さ し 

Range("F1").value = "="B;"&A1&"_"&B1&"

これだと ; がエラーとなります。

【19605】Re:セルに入力したい数式が指定できない
回答  かみちゃん  - 04/11/10(水) 22:32 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>Range("F1").value = "="B;"&A1&"_"&B1&"
>
>これだと ; がエラーとなります。

Range("F1").Formula = "=""B;""&A1&""_""&B1"
としなければいけないのではないでしょうか?

> これが大量にあるのでマクロで自動処理をしたいのですが・・

ということなので、以下のように計算式を入れたいセルを一括選択して、実行するとうまく処理されると思います。
Option Explicit

Sub Macro1()
 Dim c As Range
 For Each c In Selection
  With c
   .Formula = "=""B;""&A" & .Row & "&""_""&B" & .Row
  End With
 Next
End Sub

【19606】Re:セルに入力したい数式が指定できない
回答  Kein  - 04/11/10(水) 22:34 -

引用なし
パスワード
   >Range("F1").value
F列に表示するのですか ? いちおう、C列にB列の入力範囲までの数式を埋め込み、
それを値のみに変えるというマクロは・・

Sub MyFomula()
  With Range("B1", Range("B65536").End(xlUp)).Offset(, 1)
   .Formula = "=""B;""&A1&""_""&B1"
   .Copy
   .PasteSpecial xlPasteValues
  End With
  Range("A1").Select
  Application.CutCopyMode = False
End Sub

てな感じになります。
>これが大量にある
このようにコピー&値貼り付けをしておかないと、大量の数式でファイルサイズが大きく
なってしまいます。

【19607】Re:セルに入力したい数式が指定できない
お礼  びびこ  - 04/11/10(水) 22:48 -

引用なし
パスワード
   早速のご回答、ありがとうございます!!
明日の朝中にしあげなくてはいけなくて、
気になって気になって(汗)
明日、出社してからこ回答いただいたコードで
やってみます!
ありがとうございました!!

【19615】Re:セルに入力したい数式が指定できない
質問  びびこ  - 04/11/11(木) 11:39 -

引用なし
パスワード
   追加で質問お願いします。

 .Formula = "=""*---""&B2&"";"""

という式のB2というセル指定を変数を使って指定することは可能ですか??
他の列に「TYPE」という列があり、そのタイプ別にコードを変えなくては
いけなくなり、全選択してコピーすることができなくなり、、
B2 の 2 を変数で与えなくては。。
無理でしょうか?

【19616】Re:セルに入力したい数式が指定できない
回答  Jaka  - 04/11/11(木) 11:51 -

引用なし
パスワード
   こんにちは。

変数 = 2
"=""*---""&B" & 変数 & "&"";"""

【19617】Re:セルに入力したい数式が指定できない
回答  かみちゃん  - 04/11/11(木) 12:36 -

引用なし
パスワード
   こんにちは。かみちゃん です。

> .Formula = "=""*---""&B2&"";"""
>
>という式のB2というセル指定を変数を使って指定することは可能ですか??

Jakaさんからコメントが出いますが、私の前回のコメント見ていただきました?
  .Formula = "=""B;""&A" & .Row & "&""_""&B" & .Row
.Rowは、その行の行番号なのですが、変数に置き換えることができます。

それから、前回のコメントの内容でよかったのかどうかも、ぜひ教えてくださいね。

【19618】Re:セルに入力したい数式が指定できない
お礼  びびこ  - 04/11/11(木) 13:15 -

引用なし
パスワード
   なるほどーー ありがとうございます!!
おかげですんなり処理ができました。
本当に助かりました(汗)
ありがとうございました!

【19619】Re:セルに入力したい数式が指定できない
お礼  びびこ  - 04/11/11(木) 13:17 -

引用なし
パスワード
   かみちゃん さん

ありがとうございました! まったく応用が効かない者で申し訳ない・・
せっかく最初にちゃんと教えてくださっていたのに(汗)
ほんとうにありがとうございました!!

10844 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free