Мой сайт Понедельник
29.04.2024
15:21
Приветствую Вас Гость | RSS Главная | | Регистрация | Вход
Меню сайта

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Форма входа

Главная » 2013 » Июнь » 30 » Макрос-переводчик
18:54
 

Макрос-переводчик

Работающие в иностранных компаниях сотрудники часто вынуждены готовить по два одинаковых отчета для отечественного и зарубежного своего начальства - на русском и английском языках. Цифры в этих отчетах, естественно, одинаковые, а меняются только подписи, заголовки и другой текст.

Такую задачу можно решить более изящно. Создаем новый лист в таком отчете и называем его "Словарь". Выписываем на этот лист в любом порядке все слова, которые надо автоматически переводить. Для каждого языка добавляем новый столбец, например, так:

Потом переходим в редактор Visual Basic (меню Сервис - Макрос - Редактор Visual Basic), вставляем новый модуль (меню Insert - Module) и копируем туда текст вот этих двух макросов:

Sub Translate() 'этот макрос переводит слова с одного языка на другой
Dim cell1 as Range, cell2 As Range
Dim i as Long, Langs As Long

Langs = 3 'количество языков перевода, включая русский

For Each cell1 In ActiveSheet.Cells.SpecialCells(xlCellTypeConstants)
For Each cell2 In Worksheets("Словарь").Cells.SpecialCells(xlCellTypeConstants)
If cell1.Value = cell2.Value Then
i = cell2.Column
If i = Langs Then i = 1 Else i = i + 1
cell1.Value = Worksheets("Словарь").Cells(cell2.Row, i).Value
GoTo 1
End If
Next cell2
1: Next cell1
End Sub

Sub ScanText() 'этот макрос копирует все слова текущей книги в
' столбец А на лист "Словарь"
i = 0
For Each sht In ActiveWorkbook.Sheets
If sht.Name = "Словарь" Then GoTo 2
For Each cell In sht.Cells.SpecialCells(xlCellTypeConstants)
c = Asc(cell.Value)
If (c >= 65 And c <= 122) Or (c >= 192 And c <= 255) Then
cell.Copy Destination:=Worksheets("Словарь").Range("A1").Offset(i, 0)
i = i + 1
End If
Next cell
2: Next sht
End Sub

Теперь можно вернуться на лист с отчетом и запустить макрос Translate через меню Сервис - Макрос - Макросы (Tools - Macro - Macros). Все слова найденные в на листе Словарь будут переведены на другой язык. Запуская макрос несколько раз, мы будем по кругу переводить наш отчет последовательно на русский-английский-немецкий-русский-английский-и т.д.

Макрос ScanText поможет при создании листа "Словарь". Этот макрос сканирует все листы текущей книги и копирует все текстовые ячейки (начинающиеся с букв русского или латинского алфавита) в первый столбец листа "Словарь". Вам останется лишь дописать перевод этих слов в соседние столбцы.

Знаете ли Вы, что cогласно релятивистской мифологии "гравитационное линзирование - это физическое явление, связанное с отклонением лучей света в поле тяжести. Гравитационные линзы обясняют образование кратных изображений одного и того же астрономического объекта (квазаров, галактик), когда на луч зрения от источника к наблюдателю попадает другая галактика или скопление галактик (собственно линза). В некоторых изображениях происходит усиление яркости оригинального источника." (Релятивисты приводят примеры искажения изображений галактик в качестве подтверждения ОТО - воздействия гравитации на свет)
При этом они забывают, что поле действия эффекта ОТО - это малые углы вблизи поверхности звезд, где на самом деле этот эффект не наблюдается (затменные двойные). Разница в шкалах явлений реального искажения изображений галактик и мифического отклонения вблизи звезд - 1011 раз. Приведу аналогию. Можно говорить о воздействии поверхностного натяжения на форму капель, но нельзя серьезно говорить о силе поверхностного натяжения, как о причине океанских приливов.
Эфирная физика находит ответ на наблюдаемое явление искажения изображений галактик. Это результат нагрева эфира вблизи галактик, изменения его плотности и, следовательно, изменения скорости света на галактических расстояниях вследствие преломления света в эфире различной плотности. Подтверждением термической природы искажения изображений галактик является прямая связь этого искажения с радиоизлучением пространства, то есть эфира в этом месте, смещение спектра CMB (космическое микроволновое излучение) в данном направлении в высокочастотную область. (подробнее читайте в FAQ по эфирной физике)

Последнее обновление: пятница 12 апреля 2013 г.

Bourabai Research Institution home page
Просмотров: 879 | Добавил: thrucked | Рейтинг: 0.0/0
Всего комментариев: 0
Поиск

Календарь
«  Июнь 2013  »
ПнВтСрЧтПтСбВс
     12
3456789
10111213141516
17181920212223
24252627282930

Архив записей

Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz


  • Copyright MyCorp © 2024 Сделать бесплатный сайт с uCoz