[[20110202040548]] 『入力文字を逆さまにしたい』(エクセル初心者) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『入力文字を逆さまにしたい』(エクセル初心者)

セルに入力した文字や数字を逆さまに表示したいです。


 回答になってませんが
 私が知る限りでは90度までしかできません!!
 逆さまにするにはオートシェイプしかないのでは?と思いますが、
 この回答が気になる所存です(スワン)

 逆さまって、上下逆さまですか?
 それとも鏡文字ってことですか?
 
セルに入力された文字は-90〜90度までしか表示できません。
上下逆さまのに入れた文字が必要な場合、横に倒した状態で作成して下さい。
90度と−90度の文字にすれば、印刷してしまうと上下逆さまに見えます。
 
鏡文字の場合は、セルに入力された状態では出来ません。
ワードアートを使用して文字を入力後、「図形描画」ツールバーの「図形の調整」「回転/反転」の「左右反転」や「上下反転」を使用してください。
 
(すずめ)

 「逆さま」という日本語の曖昧さで望む結果がわかりませんね

 「あいうえお」を「おえういあ」という「逆さま」もあるのかな

 (momo)


 全角文字だけですけど。(特殊文字はだめな物がある。)
 「おめでとう」の場合、
 セルに「う」Alt + enter、「と」Alt + enter、「で」Alt + enter、
 「め」Alt + enter、「お」

 う
 と
 で
 め
 お

 「うとでめお」と逆さ読みに書く。
 そのセルのフォント名の先頭に「@」を追加書き込みしてOK。
 @MS Pゴシック
 ↑
 手動で書き込む。

 セルの書式→配置にて文字方向を90度にしてOK。
 BJ


 "「あいうえお」を「おえういあ」という「逆さま」もあるのかな"
 小生もこれかなと思いました。

 マクロ初心者なので、ただ「目的に合う動作を」だけを考えて、コードを考えてみました。
 以下が、そのコードです。

 Sub Test()
  Dim myData As Long
  Dim myData1 As String
  Dim StrRight As String
  Dim i As Long
  Dim Ketugo As String

   myData = Len(Cells(1, 1).Value)

   myData1 = Cells(1, 1).Value
   StrRight = Right(myData1, 1)
   Cells(1, 3).Value = StrRight

   For i = 1 To myData - 1

    StrMidA = Mid(myData1, myData - i, 1)
    Cells(1, 3 + i).Value = Cells(1, 3 + i - 1) & StrMidA
    Ketugo = Cells(1, 3 + i).Value
   Next i

    Cells(1, 2).Value = Ketugo
 End Sub

 処理のために文字数分だけの列を使用してしまうところが、気になります。
 もっと、スマートなコードに訂正してくだされば幸いです。
 (わかあゆ)

 >もっと、スマートなコード
 ユーザー定義関数だとして
 VBAにはStrReverse関数があるので

  Function StrRev(myStr As String) As String
  StrRev = StrReverse(myStr)
  End Function

 だけですね。
 (momo)

 momo様、StrReverse関数ですか。
 大変、スマートなコードで処理できるのですね。
 勉強になりました。
 (わかあゆ)

 フォントの書体名の左側に半角で「@」と入力
セルの書式設定 配置で90度
というのもありですか?
(kou)

 今回の質問とは直接は関係ないですが上下・左右の反転した図を作成する
 マクロです。

 Sub hanten()
  Dim lt As Single
  Dim tp As Single
  Dim wd As Single
  Dim ht As Single
  Dim r As Range
  Dim pic As Object
  Dim sikaku As Object
   'アクティブセルに対して処理
   Set r = ActiveCell
   With r
    lt = .Left
    tp = .Top
    wd = .Width
    ht = .Height
   End With
   r.Copy
   Set pic = ActiveSheet.Pictures.Paste
   Application.CutCopyMode = False
   Set sikaku = ActiveSheet.Shapes(pic.Name)
   With sikaku
    .Width = r.Width
    .Height = r.Height
    .Left = lt
    .Top = tp
    .Flip msoFlipVertical '上下反転
 '   .Flip msoFlipHorizontal '左右反転
    .Fill.Visible = msoFalse
   End With
   Set pic = Nothing
   Set sikaku = Nothing
   Set r = Nothing
 End Sub

 なお、
    .Flip msoFlipVertical '上下反転
    .Flip msoFlipHorizontal '左右反転
 両方とも同時に行うと180度回転と同じ効果が得られます。

 (マクロマン)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.