Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.07.2011, 21:20   #1
jojorr
 
Регистрация: 25.07.2011
Сообщений: 5
По умолчанию интересный макрос

Встретил задачу. Думал быстро решу,но не заладилось......

В общем условие:

"Макрос должен значения ячеек фамилия2,имя2,отчество2,дата рождения2 записать в одну ячейку через "\". Потом в тот же столбец таким же макаром фамилия1, имя1 ,отчество1,дата рождения1. При этом совпадающие строки поставить вместе"
Вложения
Тип файла: rar FIO.rar (4.0 Кб, 20 просмотров)
jojorr вне форума Ответить с цитированием
Старый 25.07.2011, 21:20   #2
jojorr
 
Регистрация: 25.07.2011
Сообщений: 5
По умолчанию

1)результат должен быть в новой книге
2)результат не должен заменить источник
3)да,в списке могут быть пропуски
4)размер разный
5)совпадающие строки должны быть вместе в каждой колонке
jojorr вне форума Ответить с цитированием
Старый 25.07.2011, 22:21   #3
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,858
По умолчанию

Цитата:
Думал быстро решу,но не заладилось......
Что, вообще ни одной строки кода не удалось написать?

Цитата:
интересный макрос
Что же в нем интересного?
Делайте тогда его сами - не будем же мы лишать вас шанса поработать над ИНТЕРЕСНЫМ макросом...
EducatedFool вне форума Ответить с цитированием
Старый 25.07.2011, 22:43   #4
Казанский
Старожил
 
Аватар для Казанский
 
Регистрация: 31.12.2010
Сообщений: 2,133
По умолчанию

Пробуйте
Код:
Option Explicit

Sub jojorr()
Dim ash As Worksheet, c As Range, r As Range
Set ash = ActiveSheet
Workbooks.Add xlWBATWorksheet
Set c = ActiveCell
Set r = ash.Range("E2")
GoSub jojorr1
Set r = ash.Range("A2")
GoSub jojorr1
[A1].Sort [A1], xlAscending, header:=xlNo
Exit Sub
jojorr1:
For Each r In Range(r, ash.Cells(ash.Rows.Count, r.Column).End(xlUp))
    c = r & "\" & r(, 2) & "\" & r(, 3) & "\" & r(, 4).Text
    Set c = c(2)
Next
Return
End Sub
exceleved@yandex.ru Яндекс.Деньги: 410011500007619
Казанский вне форума Ответить с цитированием
Старый 26.07.2011, 12:01   #5
jojorr
 
Регистрация: 25.07.2011
Сообщений: 5
По умолчанию

Спасибо огромное. Вы дали прекрасную идею!!!!
jojorr вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Интересный макрос для создания писем в Outlook через Excel Neo007 Microsoft Office Excel 17 19.04.2009 20:44
Интересный вопрос I'van Microsoft Office Excel 2 13.04.2009 12:15
интересный @ LeoN PHP 3 22.05.2008 16:41