Lernu Esperanton! 理論的に作られた国際共通語エスペラントを学びませんか

言語を対称させて表示 学習・旅行に便利

言語を対称させて表示 学習・旅行に便利

50languagesというサイトがありますが、
(ここ数日接続不能でしたが、再開されました)

ここでは、どの言語も同じ例文が示されていますので、
ここの文字資料を利用して次のように出力する
Excelマクロを作成しました。

gengo_taisyO_kekka.jpg

必要とする言語のページから、テキストを抜き取り、
次のように配置します。
シート名は適宜決めておきます(実行時に入力を求められる)。

なお、空のカラムを間に置くと、
それより右のカラムの言語は処理されませんので
控えにしておくとよいでしょう。

gengo_taisyO_sheet.jpg

  • 1行目は言語名
    2行目は日本語テキスト(Bカラムから右はほんとは不要ですが)
    3行目は対象言語テキスト
    4行目は空行
     以下、2~4行目を繰り返し
  • Aカラムに置いた言語の最後のセルには
    終了マークとして「.」(半角ピリオド)を置きます。

マクロ実行前に「結果」というシートを作ってください。
ここに処理した内容が出力されます。

コピーして貼り付ける場合
Excelの「開発」タブ
Visual Basic
挿入
標準モジュール
右の「マクロ」タブの内容をコピーして貼り付け

  • このブログの規則で、各行の左のインデントを
    半角スペース(1バイト)で表示できないため、しかたなく、
    全角スペース(2バイト)にしてあります。
    コピーした後で、半角スペースに直してください。

ダウンロードした場合
ここからマクロをダウンロードします。
圧縮してあるので、まず解凍します。

Excelの「開発」タブ
Visual Basic
ファイル
ファイルのインポート
ファイル名のまどに「*」を入れてEnter、
taiyaku_macro.txtを選択。

  • プロジェクトに標準モジュールが表示されたので、
    [+]をクリックしてModule 1 をダブルクリック
    これでマクロが表示されます。

Sub 対訳作成()

'2018-02-28 @ belmonto
'「結果」シートに結果を書き出すマクロ

'任意の名前のシートに、対象言語をA, B, Cと横に並べて置く。空カラムの前まで
' 今回処理しない言語は空カラムの右においておけばよい
' 各言語の配置は1行目に言語名
' 次から1行目日本語、2行目その言語、3行目は空行、これの繰り返し
' Aカラムの最後は空行のかわりに「.」(ピリオド)を置く

'Excelはユニコード(utf-8)に対応しておらずで、ファイルの読み書きは不可能なので
'シート上に出力することにする

'----------------- 設定 -----------------

 Let シート名 = InputBox("操作するシート名を入れてください")
 Worksheets(シート名).Select

 '何言語を対象とするか調べる(1行目の空セル前まで)

 Let 数調べ = 1
 While Cells(1, 数調べ) <> Empty
  Let 数調べ = 数調べ + 1
 Wend

 Let gengosuu = 数調べ - 1
 Dim frazo(58, 20) As String

'----------------- データをシートから読み取る -----------------

 '何行あるか調べる

 Let 行調べ = 1
 While Cells(行調べ, 1) <> "."
 Let 行調べ = 行調べ + 1
 Wend

 Let tatesaigo = 行調べ

  'メモリに取り込む

 For tate = 1 To 行調べ
   For kai = 1 To 3
   For horizonto = 1 To gengosuu
    Let frazo(tate, horizonto) = Cells(tate, horizonto)
   Next
   Next
 Next

'----------------- 「結果」シートをまっさらにする -----------------

 Worksheets("結果").Select
 Cells.Select
 Selection.ClearContents
 Range("A1").Select

'----------------- データをシートに書き込む -----------------

'2018-03-11 言語名を表示するよう変更

 Worksheets("結果").Select
 For tate = 1 To 行調べ - 1
  If tate Mod 3 = 1 Then
   Let n = n + 1
   If tate = 1 Then
    For yoko = 1 To gengosuu
     Let Cells(1, 1) = Cells(1, 1) & frazo(tate, yoko) & " "
     Next
   Else
    Let Cells(n, 1) = (tate \ 3) & ") " & frazo(tate + 1, 1)
   End If
  ElseIf tate Mod 3 = 2 Then
    For horizonto = 1 To gengosuu
     Let n = n + 1
      Let Cells(n, 1) = frazo(1, horizonto) & ": " & frazo(tate + 1, horizonto)
    Next
   ElseIf tate Mod 3 = 0 Then
    Let n = n + 1
    Let Cells(n, 1) = Empty
   End If
  Next

'----------------- 見出し整形 -----------------

'2018-03-11 追加

 Range("A1").Select
 With Selection
  .HorizontalAlignment = xlCenter
  .VerticalAlignment = xlCenter
 End With
 With Selection.Interior
  .Pattern = xlSolid
  .PatternColorIndex = xlAutomatic
  .Color = 65535
 End With

End Sub

Eo ポル ブラジル スペ カタル イタ フラ 英UK オランダ 独
Eo: tridek ses: Publikaj transportoj
ポル: trinta e seis: Transporte público
ブラジル: trinta e seis: Transporte público
スペ: treinta y seis: Transporte Público
カタル: trenta-sis: Els transports públics
イタ: trentasei: Trasporti pubblici
フラ: trente-six: Les transports publics
英UK: thirty-six: Public transportation
オランダ: zesendertig: Openbaar vervoer
独: sechsunddreißig: Öffentlicher Nahverkehr

1) バス停はどこですか?
Eo: Kie estas la bushaltejo?
ポル: Onde é que é a paragem do autocarro?
ブラジル: Onde é o ponto do ônibus?
スペ: ¿Dónde está la parada del autobús?
カタル: On és la parada de l'autobús?
イタ: Dov’è la fermata dell’autobus?
フラ: Où est l’arrêt du bus ?
英UK: Where is the bus stop?
オランダ: Waar is de bushalte?
独: Wo ist die Bushaltestelle?

2) 中心部へのバスはどれですか?
Eo: Kiu buso veturas al la urbocentro?
ポル: Qual é o autocarro que vai para o centro?
ブラジル: Qual é o ônibus que vai para o centro?
スペ: ¿Qué autobús va al centro?
カタル: Quin autobús va al centre de la ciutat?
イタ: Quale autobus va in centro?
フラ: Quel bus va dans le centre-ville ?
英UK: Which bus goes to the city centre / center (am.)?
オランダ: Welke bus rijdt er naar het centrum?
独: Welcher Bus fährt ins Zentrum?

3) どの路線に乗らなければいけませんか?
Eo: Kiun linion mi prenu?
ポル: Qual é a linha que eu tenho de apanhar?
ブラジル: Qual é a linha que tenho de apanhar?
スペ: ¿Qué línea tengo que coger?
カタル: Quina línia he de prendre?
イタ: Che linea devo prendere?
フラ: Quelle ligne dois-je prendre ?
英UK: Which bus do I have to take?
オランダ: Welke bus moet ik nemen?
独: Welche Linie muss ich nehmen?

4) 乗り換えはありますか?
Eo: Ĉu mi devas ŝanĝi?
ポル: Tenho de mudar?
ブラジル: Tenho de mudar?
スペ: ¿Debo hacer trasbordo / cambiar de autobús?
カタル: Hauré de canviar d’autobús?
イタ: Devo cambiare?
フラ: Est-ce que je dois changer ?
英UK: Do I have to change?
オランダ: Moet ik overstappen?
独: Muss ich umsteigen?

5) どこで乗り換えなければいけませんか?
Eo: Kie mi devas ŝanĝi?
ポル: Onde é que tenho de mudar?
ブラジル: Onde tenho de mudar?
スペ: ¿Dónde debo hacer trasbordo / cambiar?
カタル: On he de canviar?
イタ: Dove devo cambiare?
フラ: Où dois-je changer ?
英UK: Where do I have to change?
オランダ: Waar moet ik overstappen?
独: Wo muss ich umsteigen?

6) 切符は一枚いくらですか?
Eo: Kiom kostas bileto?
ポル: Quanto é que custa um bilhete?
ブラジル: Quanto custa uma passagem?
スペ: ¿Cuánto vale un billete?
カタル: Quant costa un bitllet?
イタ: Quanto costa un biglietto?
フラ: Combien coûte un billet ?
英UK: How much does a ticket cost?
オランダ: Hoeveel kost een kaartje?
独: Was kostet ein Fahrschein?

7) 中心部は、幾つ目のバス停ですか?
Eo: Kiom da haltejoj estas ĝis la urbocentro ?
ポル: São quantas paragens até ao centro?
ブラジル: Quantas paradas são até ao centro?
スペ: ¿Cuántas paradas hay hasta el centro?
カタル: Quantes parades hi ha fins al centre?
イタ: Quante fermate ci sono fino in centro?
フラ: Combien y a-t-il d’arrêts jusqu’au centre-ville ?
英UK: How many stops are there before downtown / the city centre?
オランダ: Hoeveel haltes zijn het naar het centrum?
独: Wie viele Haltestellen sind es bis zum Zentrum?

8) ここで降りてください。
Eo: Vi devas elbusiĝi ĉi-tie.
ポル: Tem que sair aqui.
ブラジル: Tem que sair aqui.
スペ: Tiene (usted) que bajar aquí.
カタル: Heu de baixar aquí.
イタ: Deve scendere qui.
フラ: Vous devez descendre ici.
英UK: You have to get off here.
オランダ: U moet hier uitstappen.
独: Sie müssen hier aussteigen.

9) 後ろから降りてください。
Eo: Vi devas elbusiĝi malantaŭe.
ポル: Tem que sair por trás.
ブラジル: Tem que sair atrás.
スペ: Tiene (usted) que bajar por detrás.
カタル: Heu de baixar per darrere.
イタ: Deve scendere dietro.
フラ: Vous devez descendre à l’arrière.
英UK: You have to get off at the back.
オランダ: U moet achteraan uitstappen.
独: Sie müssen hinten aussteigen.

10) 次の地下鉄は5分後です。
Eo: La sekvanta metroo alvenos post kvin minutoj.
ポル: O próximo metro vem em 5 minutos.
ブラジル: O próximo metrô chega em 5 minutos.
スペ: El próximo metro pasa dentro de 5 minutos.
カタル: El pròxim metro arriba d’aquí cinc minuts.
イタ: La prossima metropolitana arriva fra cinque minuti.
フラ: Le prochain métro arrive dans cinq minutes.
英UK: The next train is in 5 minutes.
オランダ: De volgende metro komt over 5 minuten.
独: Die nächste U-Bahn kommt in 5 Minuten.

11) 次の市電は10分後です。
Eo: La sekvanta tramo alvenos post dek minutoj.
ポル: O próximo eléctrico vem em 10 minutos.
ブラジル: O próximo bonde chega em 10 minutos.
スペ: El próximo tranvía pasa dentro de 10 minutos.
カタル: El pròxim tramvia arriba d’aquí deu minuts.
イタ: Il prossimo tram passa fra dieci minuti.
フラ: Le prochain tram arrive dans dix minutes.
英UK: The next tram is in 10 minutes.
オランダ: De volgende tram komt over 10 minuten.
独: Die nächste Straßenbahn kommt in 10 Minuten.

12) 次のバスは15分後です。
Eo: La sekvanta buso alvenos post dek kvin minutoj.
ポル: O próximo autocarro vem em 15 minutos.
ブラジル: O próximo ônibus chega em 15 minutos.
スペ: El próximo autobús pasa dentro de 15 minutos.
カタル: El pròxim autobús arriba d’aquí quinze minuts.
イタ: Il prossimo autobus passa fra quindici minuti.
フラ: Le prochain bus arrive dans quinze minutes.
英UK: The next bus is in 15 minutes.
オランダ: De volgende bus komt over 15 minuten.
独: Der nächste Bus kommt in 15 Minuten.

13) 地下鉄の終電は何時ですか?
Eo: Kiam la lasta metroo forveturas?
ポル: Quando é que é o último metro?
ブラジル: Quando é o último metrô?
スペ: ¿A qué hora pasa el último metro?
カタル: Quan passa el darrer tren?
イタ: Quando parte l’ultima metropolitana?
フラ: Quand part le dernier métro ?
英UK: When is the last train?
オランダ: Wanneer gaat de laatste metro?
独: Wann fährt die letzte U-Bahn?

14) 市電の終電は何時ですか?
Eo: Kiam la lasta tramo forveturas?
ポル: Quando é que é o último elétrico?
ブラジル: Quando sai o último bonde?
スペ: ¿A qué hora pasa el último tranvía?
カタル: Quan passa el darrer tramvia?
イタ: Quando parte l’ultimo tram?
フラ: Quand part le dernier tram ?
英UK: When is the last tram?
オランダ: Wanneer gaat de laatste tram?
独: Wann fährt die letzte Straßenbahn?

15) バスの最終は何時ですか?
Eo: Kiam la lasta buso forveturas?
ポル: Quando é que é o último autocarro?
ブラジル: Quando sai o último ônibus?
スペ: ¿A qué hora pasa el último autobús?
カタル: Quan passa el darrer autobús?
イタ: Quando parte l’ultimo autobus?
フラ: Quand part le dernier bus ?
英UK: When is the last bus?
オランダ: Wanneer gaat de laatste bus?
独: Wann fährt der letzte Bus?

16) 乗車券をお持ちですか?
Eo: Ĉu vi havas bileton?
ポル: Tem um bilhete?
ブラジル: Você tem uma passagem?
スペ: ¿Tiene (usted) billete?
カタル: Que té bitllet?
イタ: Ha il biglietto?
フラ: Avez-vous un billet ?
英UK: Do you have a ticket?
オランダ: Heeft u een kaartje?
独: Haben Sie einen Fahrschein?

17) 乗車券? いいえ、持っていません。
Eo: Bileton? – Ne, mi havas neniun.
ポル: Um bilhete? – Não, não tenho.
ブラジル: Uma passagem? – Não, não tenho.
スペ: ¿Billete? – No, no tengo billete.
カタル: Bitllet? – No, no en tinc.
イタ: Il biglietto? – No, non ce l’ho.
フラ: Un billet ? – Non, je n’en ai pas.
英UK: A ticket? – No, I don’t have one.
オランダ: Een kaartje? – Nee, ik heb geen kaartje.
独: Einen Fahrschein? – Nein, ich habe keinen.

18) では、罰金をいただきます。
Eo: Do vi devas pagi monpunon.
ポル: Então tem que pagar uma multa.
ブラジル: Então tem que pagar uma multa.
スペ: Pues tendrá (usted) que pagar una multa.
カタル: Llavors vostè ha de pagar una multa.
イタ: Allora deve pagare la multa.
フラ: Alors vous devez payer une amende.
英UK: Then you have to pay a fine.
オランダ: Dan moet u een boete betalen.
独: Dann müssen Sie eine Strafe zahlen.

a:380 t:3 y:1
}}

コメント



認証コード8069

コメントは管理者の承認後に表示されます。

powered by Quick Homepage Maker 4.91
based on PukiWiki 1.4.7 License is GPL. QHM

最新の更新 RSS  Valid XHTML 1.0 Transitional