プロが教える店舗&オフィスのセキュリティ対策術

ACCESSで作成されたデータについてですが、

(1)全てのデータの郵便番号の-(ハイフン)をまとめて 削除する方法
 (例)123-4567→1234567
(2)頭の一文字をまとめて削除する方法
 (例)A0001→0001
がわからないので、よい方法を教えてください。
よろしくお願いします。

A 回答 (5件)

MID関数を使用すればいいと思います




MID([KOUMOKUA],1,3) & MID([KOUMOKUA],5,3)

というような感じで
新規のテーブルへ書き出すか
更新クエリーで更新実施すればできます

A0001→0001

MID([KOUMOKUB],2,4)

で出来ます
    • good
    • 0
この回答へのお礼

どうもありがとうございました。大変助かりました。

お礼日時:2004/06/10 23:42

Excelだったら、リプレイス関数で、


A1にデータが入っているとすれば、
=REPLACE(A1,4,1,"")で消えますよね。

(2)のほうも、同じ要領で
=REPLACE(A1,1,1,"")で出来ますが、
これじゃなかったらゴメンなさい。
    • good
    • 0
この回答へのお礼

どうもありがとうございました。

お礼日時:2004/06/10 23:40

VBAでやるなら


<郵便番号の-(半角)削除>
Sub test01()
Dim conn As Connection
Dim rs As ADODB.Recordset
Dim strSql As String

Set conn = CurrentProject.Connection
Set rs = New ADODB.Recordset
rs.Source = "住所録1"
rs.Open "住所録1", conn, adOpenKeyset, adLockOptimistic
rs.MoveFirst
Do Until rs.EOF
s = rs!郵便番号
st = 1
p01:
p = InStr(st, s, "-")
If p = 0 Then GoTo p02
s = Mid(s, 1, p - 1) & Mid(s, p + 1, Len(s) - p)
st = p + 1
GoTo p01
p02:
rs!郵便番号 = s
rs.Update
rs.MoveNext
Loop
rs.Close
Set rs = Nothing
conn.Close
Set conn = Nothing
End Sub
<「コード」フィールドの先頭1字削除>
Sub test02()
Dim conn As Connection
Dim rs As ADODB.Recordset
Dim strSql As String

Set conn = CurrentProject.Connection
Set rs = New ADODB.Recordset
rs.Source = "住所録1"
rs.Open "住所録1", conn, adOpenKeyset, adLockOptimistic
rs.MoveFirst
Do Until rs.EOF
s = rs!コード
s = Mid(s, 2, Len(s) - 1)
rs!コード = s
rs.Update
rs.MoveNext
Loop
rs.Close
Set rs = Nothing
conn.Close
Set conn = Nothing
End Sub
    • good
    • 0
この回答へのお礼

どうもありがとうございました。

お礼日時:2004/06/10 23:39

応用編です。


(1)任意の文字数、任意の位置のハイフォンを省く場合、A1にハイフォンを含む文字があるとして、
=LEFT(A1,FIND("-",A1)-1)&MID(A1,FIND("-",A1)+1,LEN(A1)-FIND("-",A1))

(2)任意の文字数に対応して頭一文字をとる場合、A2に頭ひと文字を省きたい文字列があるとして
=RIGHT(A2,LEN(A2)-1)
    • good
    • 0
この回答へのお礼

どうもありがとうございました。大変助かりました。

お礼日時:2004/06/10 23:38

1に関しては、テーブルに削除したいデータがあると仮定すると


削除したいレコードを選択(白黒反転)し、「置換(Ctrl+H)」で
「検索する文字列」に「-」、「置換後の文字列」に何も入れずに
「カレントフィールドのみ」にチェックが入っている事と、
「完全に一致するフィールドだけを検索する」にチェックが入っていない事を
確認して「全て置換」でOKです。

2に関してはAccessではなくExcelにエクスポート → Excelで加工 →
Accessにインポートの方が簡単では?
    • good
    • 0
この回答へのお礼

どうもありがとうございました。大変助かりました。

お礼日時:2004/06/10 23:43

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています