Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Экспорт выделенной строки(с именованными столбцами) в документ .docx+вставка в коды(имена полей).
 
Цитата
pantel1987 написал:
Вот набросал код, подредактируйте под свои нужны:
Спасибо большое за направление!
У меня был затык как раз с диалоговым окном выбора файла и переноса туда значений ячеек в строке под столбцами.
Экспорт выделенной строки(с именованными столбцами) в документ .docx+вставка в коды(имена полей).
 
Цитата
pantel1987 написал:
без примера сложно
Вот пример скринов с файлов.

Т.е. выделили всю строку в .xlsx файле, нажали кнопку макроса и он предложил открыть .docx файл. После выбора файла в нём подменяются поля из .xlsx файла. Если в .xlsx файле какое-то из полей пустое, то в .docx файле код(имя столбца в .xlsx файле) подменяется на пустое место.
Изменено: rango13 - 11.03.2020 05:08:31
Экспорт выделенной строки(с именованными столбцами) в документ .docx+вставка в коды(имена полей).
 
Всем привет!
Даже не знаю, как тему сформулировать точно. Но попытаюсь.

Есть таблица .xlsx вида:

NAME OKUD INN
Петров 1123213 4235435435

Необходимо выделить всю строку с этими данными и перенести их в выбираемый документ .docx, представляющий из себя договор, в котором есть такие шифры, названные по именам столбцов в файле .xlsx.

Т.е., например в .xlsx файле выделяю всю строку:
NAME OKUD INN
Петров 1123213 4235435435

и применяю макрос, который открывает диалоговое окно выбора файла .docx, который из себя представляет договор, примерно такого вида:

Сотрудник NAME имеет ОКУД: OKUD и ИНН: INN

После выбора файла в нём заменяются шифры NAME, OKUD, INN на те, который оказались выделены в первоначальном файле .xlsx

Если в первоначальном файле какое-либо поле(например OKUD) пустое, то при применении макроса в .docx файле этот шифр становится пустым.


Пока даже не знаю куда копать, чтобы решить такую задачу. Можете помочь?
Перемещение 3 подряд идущих ячеек вправо.
 
Вот такой ещё вопрос:
Код
10005023/190711/0035148/8
Германия
276
10009030/230513/0005963/16
ГЕРМАНИЯ
276
10101120/221214/0046877
ГЕРМАНИЯ
276
10113020/150311/0002934/2
ЛИТВА
728
10113020/210211/0001790/18
ЛИТВА
728

Если нарушается порядок строк, т.е.
1 строка - только цифры
2 строка - только буквы
3 строка - только цифры
, то подсветить строку, в которой этот порядок нарушен. Я так понимаю, что при проверки символов в строке(тех же букв), нужно указывать все символы алфавита?

Алгоритм:
Если в строке между 1 и 3 третьей отсутствуют символы "А Б В Г Д ....", то выделить строку цветом.
Перемещение 3 подряд идущих ячеек вправо.
 
Ого, вы прямо для меня новый мир открыли! Спасибо, буду знать!
Перемещение 3 подряд идущих ячеек вправо.
 
Действительно, не усмотрел. Спасибо!
Перемещение 3 подряд идущих ячеек вправо.
 
Ошибся, каждую нечётную строчку перемещает скрипт:
Скрытый текст
Изменено: rango13 - 07.10.2015 11:38:19
Перемещение 3 подряд идущих ячеек вправо.
 
Да, только в первом ряду цифры перемещаются, а не копируются.

p.s. В файле не все строки преобразуются правильно.
Изменено: rango13 - 07.10.2015 11:18:59
Перемещение 3 подряд идущих ячеек вправо.
 
Всем привет!

Было:
1
2
3
4
5
6
7
8
9
Стало:
1 2 3
4 5 6
7 8 9

У меня только получилось перемещать каждую вторую ячейку, но не три сразу.
VBA. Удалить все одинаковые строки в выделенном столбце.
 
Код
Sub qq()
' Задаём переменную
    Dim x As Range, i As Long


' Запускаем цикл, который идёт с первой строки по последнюю
    For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row
'  Здесь только понял, что если просматриваемые строки в первом столбце >1(это как?) или пусты, тогда _(что это значит?)
        If Application.CountIf([A:A], Cells(i, 1)) > 1 Or Cells(i, 1) = "" Then _
' Второй цикл выполняется, если условие предыдущего верно. Если значение переменной "x" пусто, значит присваиваем ей номер строки, иначе что?
        If x Is Nothing Then Set x = Rows(i) Else Set x = Union(x, Rows(i))
    Next
' Если значение переменной "x" не пусто, тогда значение "x" удаляется.
    If Not x Is Nothing Then x.Delete
End Sub
Если Вас не затруднит, можете описать? Пытаюсь сам разобраться, но пока плохо получается.
VBA. Удалить все одинаковые строки в выделенном столбце.
 
Всем привет!

Нужно удалить все повторяющиеся(и пустые) строки(без дубликатов) на основании первого столбца. Удаленные строки остаются пустыми.
ДО:
Скрытый текст

ПОСЛЕ:
Скрытый текст

Сначала использовал встроенную функцию поиска одинаковых значений в выделенном тексте, немного доработал, но результата всё равно нет.
Код
Sub Макрос1()
'
' Макрос1 Макрос
' Сначала макрос ищет одинаковые строки в первом столбце и когда находит - помечает их цветом(как и значения внутри ячейки).
' Затем макрос проходит от последней ячейки снизу до самой первой в поисках ячеек в первом столбце, которые закрашены определенным цветом. 
' Их-то он и должен удалять. Но не удаляет.

    Columns("A:A").Select
    Selection.FormatConditions.AddUniqueValues
    Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
    Selection.FormatConditions(1).DupeUnique = xlDuplicate
    With Selection.FormatConditions(1).Interior
        .PatternColorIndex = xlAutomatic
        .Color = 13551615
        .TintAndShade = 0
    End With
    
    For i = (ActiveSheet.UsedRange.Row - 1 + ActiveSheet.UsedRange.Rows.Count) To 1 Step -1
        If    (Selection.Cells(i, 1).Interior.Color = 13551615) Then
              Selection.Rows(i).Delete Shift:=xlUp
        End If
    Next i
    Selection.FormatConditions(1).StopIfTrue = False
End Sub
Страницы: 1
Наверх