No.5ベストアンサー
- 回答日時:
No.3です。
空セルのときに未処理となるようにしないと、変な残骸がでてしまうことに気付きましたので、コードを一部修正しました。
'選択範囲内の相対参照数式を絶対参照数式へ変換
Sub Sample()
Dim rngCell As Range
For Each rngCell In Selection
If Not IsEmpty(rngCell) Then
Select Case rngCell.HasArray
Case True
rngCell.FormulaArray = _
Application.ConvertFormula( _
rngCell.FormulaArray, xlA1, , xlAbsolute, rngCell)
Case False
rngCell.Formula = _
Application.ConvertFormula( _
rngCell.Formula, xlA1, , xlAbsolute, rngCell)
End Select
End If
Next rngCell
End Sub
とここまで書いてなんですが、はずしていたら申し訳ありません。
この回答へのお礼
お礼日時:2005/02/18 12:15
VBAのことはさっぱりでしたが、教えていただいたコードは大変便利ですね^^;
本当は置換えを使って、やったほうが良いかと思いますが、これを使わせていただきます。
ありがとうございました。
No.7
- 回答日時:
B1に '=$A$1 と入力し、下にフィルしてから
B列を選択し、データメニュー→区切り位置→完了ボタン
こんな感じですか?
また、
B1に '=$A$1
B2に =$A$1
これを下までフィルしてから先ほどと同じ操作をすると
=$A$1
=$A$1
=$A$2
=$A$2
=$A$3
=$A$3
更に
B1に '=$A$1
B2に =$A$1
B3に '=$A$1
上と同じ操作をすると
=$A$1
=$A$1
=$A$1
=$A$2
=$A$2
=$A$2
=$A$3
=$A$3
=$A$3
こういうことでしょうか。
No.6
- 回答日時:
絶対参照でコピーしたい状況はほとんど考えられないと思うのですが、どのようなとき必要なのでしょうか?
基本的にはご希望の操作はできないのですが、このような場合にはいくつかの対応策があります。
具体的に変換したい例を上げていただければ、回答しやすいのですが、方法としては、
1)文字列として入力して最後に数式に一括変換する方法、
2)相対参照の数式でオートフィルし、最後に文字を置換する方法があります。
例えば後者の例ですと、「=A1+B1」のような式であれば、オートフィル後、Ctrl+Hで置換ダイアログを出して検索する文字列に「A」置換する文字列に「$A$」としてすべて置換します。同様にBについても置換します。
No.4
- 回答日時:
=A$1
=A$2
=A$3
=A$4
という文字列を作成するような処理を行っては?
A1:1
B1:="=A$"&A1
を下にフィル、B列をコピー、値で貼り付け、編集。とか。
No.3
- 回答日時:
VBAでやるしかありませんね。
でも、作表の過程では、このような機能があると重宝するかも。
1. 相対参照をフィルコピー
2. 1.のセル範囲を選択し、下記VBAコード実行
'セル選択範囲内の相対参照数式を絶対参照数式へ変換
Sub Sample()
Dim rngCell As Range
For Each rngCell In Selection
Select Case rngCell.HasArray
Case True
rngCell.FormulaArray = _
Application.ConvertFormula(rngCell.FormulaArray, xlA1, , xlAbsolute, rngCell)
Case False
rngCell.Formula = _
Application.ConvertFormula(rngCell.Formula, xlA1, , xlAbsolute, rngCell)
End Select
Next rngCell
End Sub
No.2
- 回答日時:
=$A$1*5 などの場合でしたら
はじめに =A1*5 と入力してフィルハンドルでコピーし
計算式の部分を選択して、置換で A → $A$ としてはどうでしょうか?
No.1
- 回答日時:
どのようなことが目的かわかりませんでしたので,誤解していたらごめんなさい。
たとえば,「 =$A$1*10 」みたいな式を,下にコピーしたいけど,動いてほしくないのはA列だけで,行は1,2,3,4…のように動いてほしい,というのであれば,「 =$A1*10 」のように,Aの前だけに$をつけます。また,行だけ固定する場合は,「 =A$1*10 」のように1の前だけに$をつけます。
ご要望と違うようなら,補足をください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルの複数のセルを一括で絶対参照にする方法 3 2023/06/14 15:57
- Excel(エクセル) Excel シート複数 金額日計表と日付 簡単にシートコピーしたら前日の残高と日付を変更させたい 1 2022/07/15 22:10
- Excel(エクセル) こんにちは。ExcelのVLOOKUP関数のことで教えてください。 2 2022/05/07 11:33
- Excel(エクセル) Excelにて、行の最後のセルの値をコピーして別sheetに張りつけるVBAコードをご教授願います 3 2022/11/20 14:35
- Excel(エクセル) excel 行でソートすると計算式が上手くいかない。 6 2022/06/01 08:18
- Excel(エクセル) エクセル シート比較で書式を変えるを繰り返したい 2 2023/05/05 11:25
- 世界情勢 海自の国際観艦式に韓国を招待、これ絶対おかしい。 9 2022/08/25 21:35
- Excel(エクセル) エクセルで対象日に該当するデータがある場合に別表へ全対象者を表示させたい。 3 2023/07/12 09:48
- Excel(エクセル) Excel ハイパーリンク設定について 教えてください 例なんですが、 VBAにてファイル1の列Gに 2 2022/11/04 17:52
- Visual Basic(VBA) VBA アドインについて お詳しい方 ご教授をお願いします。 相談事項 現在以下の対応を実施した所、 1 2022/11/02 16:53
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセル初心者です 関数の入れ...
-
Microsoft1Officeの互換ソフト...
-
Excel ピボットテーブルで日付...
-
エクセル関数を教えてください
-
【マクロ】その時、その時で変...
-
【マクロ】読取専用のファイル...
-
LOOKUP関数を使えばいいのでし...
-
エクセル 白黒印刷で白線を印刷...
-
【関数】先頭だけにある、半角...
-
【関数】適切な文字数の数字を...
-
Excelのチェックボックスの使い...
-
エクセルでの作業計算方法について
-
Excelのpivotについて質問です
-
WPS OFFICEでの縦書きについて
-
時間によってファイル名が変わ...
-
エクセルのセルに同じ大きさの...
-
Aというブックの1というシート...
-
エクセルの順位別一覧表の自動...
-
西暦や和暦の表示をyyyymmdd表...
-
【マクロ】エクセルにかいてあ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel 2019 のピボットテーブル...
-
[関数得意な方]教えて下さい・...
-
Excelにてある膨大なデータを管...
-
[関数について]わかる方教えて...
-
Excel初心者です。 詳しい方、...
-
excelの不要な行の削除ができな...
-
エクセル関数に詳しい方教えて...
-
INDIRECTを使わず excelで複数...
-
[オートフィルタ]で抽出された...
-
エクセルの神よ、ご回答を! エ...
-
エクセル関数に詳しい方、教え...
-
各ページの1番上の表示について
-
Excelで写真のような表を作った...
-
エクセルで不等号記号(≠)が上に...
-
数学 Tan(θ)-1/Cos(θ)について...
-
Excel 2019 は、SPILL機能があ...
-
Excelで全角を半角にしたいので...
-
条件付き書式を教えてください
-
Excel フィルターを掛けた状態...
-
[オートフィルタ]の適用範囲の...
おすすめ情報