X



Excel総合相談所 129

レス数が1000を超えています。これ以上書き込みはできません。
0001名無しさん@そうだ選挙にいこう
垢版 |
2017/10/02(月) 18:58:15.04
▼━質問テンプレ (出来れば使ってね) ━━━
【1 OSの種類         .】 Windows**
【2 Excelのバージョン   】 Excel**
【3 VBAが使えるか    .】 はい・いいえ
【4 VBAでの回答の可否】 可・否

▼━関連スレ━━━━━━━━━━━━

前スレ
Excel総合相談所 126(実質127)
https://find.2ch.net/search?q=excel

Excel VBA 質問スレ
https://find.2ch.net/search?q=excel+vba

【質問不可】Excel総合相談所スレの雑談・議論スレ
https://find.2ch.net/search?q=excel+%E3%80%80%E7%9B%B8%E8%AB%87%E6%89%80
0973名無しさん@そうだ選挙にいこう
垢版 |
2017/12/19(火) 00:02:51.56
【1 OSの種類         .】 Windows10
【2 Excelのバージョン   】 Excel2013
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

基本的な質問で恐縮ですが、
セルA1〜C5全てに入力したデータがあって、
他のセル(例えばA6)にoffset関数を使って
A1〜C1、A2〜C2というように行毎にAからC列の情報を参照するにはどうすれば良いでしょうか?
[幅]の設定を3にしても指定したセルの情報しか参照してくれません。
0974名無しさん@そうだ選挙にいこう
垢版 |
2017/12/19(火) 00:41:30.00
>>968
エクセルでは無理。
保護をしてもシートコピーとかで簡単に開きます。
0975名無しさん@そうだ選挙にいこう
垢版 |
2017/12/19(火) 00:45:59.21
>>973
仕様です。
計算であれば範囲指定などに使えるがoffset単体でデータの結合は無理。
=offset(hogehogeA)&offset(hogehogeB)&offset(hogehogeC)とか力技で何とかするしかない。
0977名無しさん@そうだ選挙にいこう
垢版 |
2017/12/19(火) 06:43:52.63
>>969
>>974
ありがとうございます。

開けられないためでなくr書かれているように計算式を変更されないためにシート内に
入力するセル(非保護)と計算式が入った結果を表示するセル(保護)を設定して
シートにパスワードの保護を掛けて保存してます。
会社がexcel2003で自宅がexcel2013で、そのデータを自宅に持ち帰りパスワード保護を解除してデータを作り変えたりしてます。
そのデータは主に他の支店でも運用(excel2003)しており、自宅で変更した後にexcel2013でパスワード保護を掛けて他支店に送ってもパスワード保護が無意味で開くことができ困ってました。
(会社のexcel2003で再度パスワード保護を掛けて再配布する手間を掛けております)
仕様なら仕方ないですがバグですよね?
0978名無しさん@そうだ選挙にいこう
垢版 |
2017/12/19(火) 06:49:45.28
excel2003でパスワード保護を掛ければ、excel2013でもパスワード保護が掛かったままで正常の動作なのですが
逆が出来ない(2013でパスワード保護を掛けても、2003で使うとパスワード情報が破棄されている状態)のです。
0979名無しさん@そうだ選挙にいこう
垢版 |
2017/12/19(火) 06:53:27.80
>会社がexcel2003で
まずはここを変えることを提案

>仕様なら仕方ないですがバグですよね?
知らん。とりあえず仕様
サポート終了ってのはそういう事

シートを非表示にしたほうがマシだな
後はvbaにでもするか
0980名無しさん@そうだ選挙にいこう
垢版 |
2017/12/19(火) 07:42:04.13
>>979
vbaにしてもvba自体がvbaでパス解除できるからイタチごっこ
0981名無しさん@そうだ選挙にいこう
垢版 |
2017/12/19(火) 07:59:48.47
>>980
>開けられないためでなくr書かれているように計算式を変更されないために
この目的ならこれで十分
vbaのパス解析してまで触ってくるようなスキルがある奴ならそもそもこんな問題は起こらない

はい、論破
0982名無しさん@そうだ選挙にいこう
垢版 |
2017/12/19(火) 12:10:20.63
>>973,975
一応補足すると、2016からはtextjoin関数が増えてできるようになった。
それに対応するために、同等の動きをするVBAがネットで検索するといくつかヒットする。
ご参考まで。
0983名無しさん@そうだ選挙にいこう
垢版 |
2017/12/19(火) 19:30:56.56
a1に
SH-800×250×14.0×22.0×18
と入力されているものを

b1に800
c1に250
d1に14
e1に22
f1に18
と入力するようにして欲しい
出来ればvbaと数式両方欲しい
0986名無しさん@そうだ選挙にいこう
垢版 |
2017/12/20(水) 00:00:07.27
>>985
VBAじゃないと無理か。VBAが嫌いな上司対応だったのでそれは諦める。

あと懸念事項があって、
800は1000とか4桁になることがある

18は0とか1桁になることがある

こういう風に文字の長さが動的になる。
そういうときどうすりゃいんだろう
0987名無しさん@そうだ選挙にいこう
垢版 |
2017/12/20(水) 00:14:19.57
>>983
B1=MID(A1,4,3)
C1=MID(A1,8,3)
D1=MID(A1,12,2)
E1=MID(A1,17,2)
F1=MID(A1,22,2)
0991名無しさん@そうだ選挙にいこう
垢版 |
2017/12/20(水) 07:42:50.36
>>986
substituteで要らない範囲を全部""で消すのが一番簡単かも
0992名無しさん@そうだ選挙にいこう
垢版 |
2017/12/20(水) 09:37:09.22
でてくる数値が5個固定なら正規表現で決め打ちもできるよ
With CreateObject("VBScript.RegExp")
  .Global = True
  .Pattern = "\d[\.\d]*"
  With .Execute(Range("A1").Value)
    Range("B1:F1").Value = Array(.Item(0), .Item(1), .Item(2), .Item(3), .Item(4))
  End With
End With
0995983
垢版 |
2017/12/21(木) 01:04:15.04
>>983の件忙しくて何もしてないです
書いたらアップします

>>989
とりあえず書いてみてあとでそこ動かせばいいかな的なノリ

>>993
その通りなんだけど、>>983が要望なので丸鋼とかは想定しなくて良い
0997名無しさん@そうだ選挙にいこう
垢版 |
2017/12/21(木) 21:25:47.07
【1 OSの種類         .】 Windows7
【2 Excelのバージョン   】 Excel2007
【3 VBAが使えるか    .】 いいえ
【4 VBAでの回答の可否】 否

エクセルでグループ化しての非表示状態(+と-で表示、非表示を切り替えできるやつ)のときや非表示のときに、
セル範囲選択してコピー&ペーストすると非表示部分までコピー&ペーストされてしまうんですが、表示部分だけコピーして非表示部分はコピーされないようにする方法ってないでしょうか?
0999名無しさん@そうだ選挙にいこう
垢版 |
2017/12/21(木) 22:52:35.21
>>998
ありがとうございます!早速明日会社のエクセルで試してみます!助かりました!
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 80日 3時間 56分 39秒
レス数が1000を超えています。これ以上書き込みはできません。

ニューススポーツなんでも実況