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

Страницы: 1 2 3 След.
Импорт данные из EXCEL в WORD через MERGEFIELD
 
Добрый день!

Импортирую данные из EXCEL в WORD через поле MERGEFIELD  
В excel в ячейки данные записаны с делением на строчки. Т.е. каждое слово с новой строчки идет.  Но когда импортирую в WORD, то это деление пропадает...

Это можно както исправить?
Спасибо  
Формула прогноза посещаемости по условиям
 
Добрый день!

Помогите составить формулы или это будет макрос, не пойму как правильно сделать.

Необходимо сделать примерный прогноз посещаемости на 6 месяцев (с учетом выкладки 4 статей в месяц и ее средней позиции 3-7).

Исходные данные
- Месячная посещаемость каждой статьи (вкладка Посещаемость статей)
- Прогноз кликабельности в процентах в зависимости от позиции (вкладка Ориентировачная кликабельность). Позиции брать 3-7
- Кол-во добавление статей в месяц - 4

Т.е. необходимо взять по списку из вкладки "Посещаемость статей" общую Посещаемость 4-х статей
Посчитать примерное кол-во переходов - умножить на случайный процент каждой статьи (между минимальные и максимальные процентом) и округлить до целого
И записать результат в вкладку Прогноз посещаемости - 1 месяц.
И далее, по аналогии, берем посещаемость следующих 4-х статей и опять все заново...

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

Т.е. примерные результат в вкладке "Прогноз посещаемости"

СПАСИБО
Фильтрация строк по группам
 
Добрый день!

Необходимо из каждой группы (столбец "Родительская группа" - если названия повторяются то это одна группа) взять N количество строк (со всеми данными) с максимальными частотами - столбец "Частота [KS]". Т.е. частоты берем по убыванию.

Соответственно если это будет фильтр было бы отлично или макрос.
Стандартными средствами это можно сделать?
СПАСИБО

Дополнение - сортировку внутри групп по поределенному полю сделал, через стандартый модуль "Сортировка"
А далее как взять N количество строк с каждой группы с выбором частот по убыванию...
Изменено: mazersw - 13.09.2021 18:12:58
Замена текста макросом на проверку наличия текста
 
Добрый день!

Записал простой макрос по замене текста.
Код
    Cells.Find(What:="ТЕКСТ", After:=ActiveCell, LookIn:=xlFormulas, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False).Activate

Проблема в том, если не найдет текст, то выдает ошибку.

Подскажите как это исправить?

СПАСИБО

Вывести приветственное сообщение при открытии файла
 
Добрый день!

Есть Файл - книга excel, в нем нет макросов вообще.
Необходимо через макрос или как-то по другому, сделать, чтобы при открытии файла выводилось информационное сообщение.
Т.е. нужно через отдельный макрос добавить макрос в текущий файл - который будет просто выводить информационное окно при открытии файла.

Зачем это все?
Я создаю файл с некими данными, файл без макросов вообще.
Потом как-то нужно добавить в файл информационное сообщение вида "Это демо версия" - которое будет при открытии файла.
Соответственно добавляться должно автоматом, так как файлов будет много и каждый раз лезть в макросы и добавлять код - не очень хочется.

Что-то не пойму как это сделать
Изменено: mazersw - 07.05.2021 19:08:16
Группировка списков запросов
 
Надстройку поставил, но не могу разобраться
Подскажите, а как обновить данные в таблице?
Группировка списков запросов
 
Цитата
Антон написал:
Добрый!
Антон, Спасибо, в результате все правильно получилось!
Но сад код выдает - Syntax Error и подсвечивается красным :(
Если получится, прикрепить пожалуйста файл с макросом
Изменено: mazersw - 03.03.2021 16:32:00
Группировка списков запросов
 
Добрый день!

Необходимо сгруппировать слова (запросы) по строчно.
Т.е. есть категория, она добавляется в результат всегда первая, с двоеточием, и далее подставляются сгруппированные списки из Список1 и Список2
Подскажите, как можно это сделать стандартными средствами или с помощью макроса?
Приложил пример, с результатом работы

СПАСИБО
Изменено: mazersw - 03.03.2021 13:46:04
Сохранить путь файла в переменную и открыть повторно
 
Вопросов больше нет, Изучаю информацию
Сохранить путь файла в переменную и открыть повторно
 
Спасибо! Буду разбираться.
Сохранить путь файла в переменную и открыть повторно
 
Есть отдельная программа, которая формирует некий каталог в книге, с созданием нового листа.
После нужно выполнить макрос нужный. Макрос если выполнить, выходит ошибка и полный завис.
Т.е., пока файл НЕ закроешь с сохранением и НЕ откроешь повторно, EXCEL просто в глухую зависает....
Как-то так...
Сохранить путь файла в переменную и открыть повторно
 
А если макрос добавлю в Personal?
Сохранить путь файла в переменную и открыть повторно
 
Добрый день!

Подскажите как можно сделать с помощью макроса:
Сохранить файл, и далее путь текущей активной книги сохранить в переменную
Закрыть файл и открыть заново файл из переменной.

Спасибо
Сократить название листа (окончание названия может быть разным)
 
СПАСИБО!
Вопрос закрыт!
Сократить название листа (окончание названия может быть разным)
 
Добрый день!

Записал простой макрос для переименования листа Excel
Код
    Sheets("Словарь 195").Name = "Словарь"

Но после названия - Словарь - могут быть любые цифры, т.е. не только 195, а к примеру 30, 504 или 1635
И нужно оставить только - Словарь соответственно.
Подскажите пожалуйста, как можно это сделать?

СПАСИБО
Удалить строки с повторяющимися значениями
 
Так и в одной категории может быть также...
Нужно проверить по строчно, т.е. если в следующей строчки совпадают данные с предыдущей, то ставим истину...
Вроде так...
Удалить строки с повторяющимися значениями
 
Цитата
Максим В. написал:
48 и 0 было выше
Понял, проблема в том, что можно ли сделать чтобы скрипт сравнивал не по всем строчками а шел по строчно....
Если правильно написал
Удалить строки с повторяющимися значениями
 
Цитата
Максим В. написал:
Показывайте файл Эксель.
Проект.xlsx (21.54 КБ)  
Удалить строки с повторяющимися значениями
 
Цитата
Максим В. написал:
Сейчас как раз И, если я Вас правильно понял.
Но здесь почему-то повторений нет, но поставил скрипт - Истина
И выше еще истина почемуто поставилась
https://c2n.me/4b4QW5B
Изменено: mazersw - 24.02.2021 16:47:02
Удалить строки с повторяющимися значениями
 
Все классно, спасибо, но как добавить условие в эти два условия - И
Т.е. чтобы проверялось и первое число и второе одновременно
Сейчас понимаю что стоит условие ИЛИ
Удалить строки с повторяющимися значениями
 
Если в колонках F и G повторяются значения ПО строчно, то удалить следующую строку, а первую оставить.
Я не пойму как можно это сделать с помощью стандартных возможностей.
Удалить строки с повторяющимися значениями
 
Добрый день!

Как удалить полностью строки, если повторяются значения более чем в 2-х ячейках и более чем 2-х строк
Приложил пример, т.е. нужно удалить строки выделенные красным.
Определить для частоты ее диапазон (НЧ, ВЧ...)
 
понял!
Буду детальнее подготавливать примеры
Определить для частоты ее диапазон (НЧ, ВЧ...)
 
Цитата
Максим В. написал:
А в столбце В что? Нужный результат?
Да
Цитата
vikttur написал:
В столбце В - непонятно что
Да, там пример сделал просто
Спасибо, то что надо, все правильно выводит!
Определить для частоты ее диапазон (НЧ, ВЧ...)
 
Добрый день!

Есть столбец с частотами - от 1 до любого числа.
В новую колонку нужно добавить уровень в зависимости от числа.
Т.е. в новый столбец с каждой ячейкой необходимо записать уровень частот.

Уровни:
НЧ - от 1 до 100
СЧ - от 100 до 1000
ВЧ - от 1000 до 10000
СВЧ от 10000

Подскажите как это можно сделать стандартными средствами Excel или через макрос?
Возможно название не правильно поставил, для модераторов - если нужно поменяйте.

Спасибо
Ошибка макроса - Method "Add" of object "ListObject" failed
 
Ок попробую.  

Цитата
Mershik написал:  ...совет описать задачу решаемую макросом
Макрос - просто создает диаграмму (график) и применяет нужное форматирование, и все...
Ошибка макроса - Method "Add" of object "ListObject" failed
 
Цитата
Андрей_26 написал:
Файл с примером приложите.
Ошибка макроса - Method "Add" of object "ListObject" failed
 
Добрый день!

Записал макрос. На некоторых файлах все выполняется отлично а на некоторых выдает ошибку:
Цитата
Run-time error -2147417848 (80010108)
Method "Add" of object "ListObject" failed
Т.е. после запуска, просто зависает программ, нажимаешь закрыть, и Windows дает - перезапуск Excel ну  и после выводится ошибка VBA.

Подскажите пожалуйста кто с этим сталкивался, как можно исправить?
Код
Sub Макрос12()
' Макрос12 Макрос

    Sheets("Словарь").Select
   ' удаление строк
       Dim ra As Range, delra As Range
    Application.ScreenUpdating = False    ' отключаем обновление экрана
    ' ищем и удаляем строки, содержащие заданный текст
    ' (можно указать сколько угодно значений, и использовать подстановочные знаки)
    УдалятьСтрокиСТекстом = Array("на", "для", "идти", "если", "при", "это", "до", "о", "из", "надо", "за", "в", "с", "как", "какой", "к", "что", "по", "где")
    ' перебираем все строки в используемом диапазоне листа
    For Each ra In ActiveSheet.UsedRange.Rows
        ' перебираем все фразы в массиве
        For Each word In УдалятьСтрокиСТекстом
            ' если в очередной строке листа найден искомый текст
            If Not ra.Find(word, , xlValues, xlWhole) Is Nothing Then
                ' добавляем строку в диапазон для удаления
                If delra Is Nothing Then Set delra = ra Else Set delra = Union(delra, ra)
            End If
        Next word
    Next
 
    ' если подходящие строки найдены, то: (оставьте одну из 2 следующих строк)
    ' скрываем их If Not delra Is Nothing Then delra.EntireRow.Hidden = True    
    If Not delra Is Nothing Then delra.EntireRow.Delete    ' удаляем их
' удаление строк конец
' применение форматирование
    Columns("A:A").Select
    Selection.FormatConditions.AddColorScale ColorScaleType:=3
    Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
    Selection.FormatConditions(1).ColorScaleCriteria(1).Type = _
        xlConditionValueLowestValue
    With Selection.FormatConditions(1).ColorScaleCriteria(1).FormatColor
        .Color = 8109667
        .TintAndShade = 0
    End With
    Selection.FormatConditions(1).ColorScaleCriteria(2).Type = _
        xlConditionValuePercentile
    Selection.FormatConditions(1).ColorScaleCriteria(2).Value = 50
    With Selection.FormatConditions(1).ColorScaleCriteria(2).FormatColor
        .Color = 8711167
        .TintAndShade = 0
    End With
    Selection.FormatConditions(1).ColorScaleCriteria(3).Type = _
        xlConditionValueHighestValue
    With Selection.FormatConditions(1).ColorScaleCriteria(3).FormatColor
        .Color = 7039480
        .TintAndShade = 0
    End With
    Columns("A:A").Select
    Selection.FormatConditions.AddDatabar
    Selection.FormatConditions(Selection.FormatConditions.Count).ShowValue = True
    Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
    With Selection.FormatConditions(1)
        .MinPoint.Modify newtype:=xlConditionValueAutomaticMin
        .MaxPoint.Modify newtype:=xlConditionValueAutomaticMax
    End With
    With Selection.FormatConditions(1).BarColor
        .Color = 15698432
        .TintAndShade = 0
    End With
    Selection.FormatConditions(1).BarFillType = xlDataBarFillSolid
    Selection.FormatConditions(1).Direction = xlContext
    Selection.FormatConditions(1).NegativeBarFormat.ColorType = xlDataBarColor
    Selection.FormatConditions(1).BarBorder.Type = xlDataBarBorderNone
    Selection.FormatConditions(1).AxisPosition = xlDataBarAxisAutomatic
    With Selection.FormatConditions(1).AxisColor
        .Color = 0
        .TintAndShade = 0
    End With
    With Selection.FormatConditions(1).NegativeBarFormat.Color
        .Color = 255
        .TintAndShade = 0
    End With
' применение форматирование конец
' добавление графика
    Range("A1:B1").Select
    ActiveSheet.Shapes.AddChart.Select
    ActiveChart.ChartType = xlBarOfPie
    ActiveChart.SetSourceData Source:=Range("Словарь!$A$1:$B$1")
    ActiveChart.SeriesCollection(1).Values = "=Словарь!$A$2:$A$20"
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection(2).Name = "=Словарь!$B$1"
    ActiveChart.SeriesCollection(2).Values = "=Словарь!$B$2:$B$20"
    ActiveChart.SeriesCollection(2).XValues = "=Словарь!$B$2:$B$20"
    ActiveChart.ChartTitle.Select
    ActiveChart.ApplyLayout (6)
    ActiveChart.ChartTitle.Text = "ТОП20 униграмм в семантическом ядре"
    Selection.Format.TextFrame2.TextRange.Characters.Text = "ТОП20 униграмм в семантическом ядре"
    With Selection.Format.TextFrame2.TextRange.Characters(1, 14).ParagraphFormat
        .TextDirection = msoTextDirectionLeftToRight
        .Alignment = msoAlignCenter
    End With
    With Selection.Format.TextFrame2.TextRange.Characters(1, 14).Font
        .BaselineOffset = 0
        .Bold = msoTrue
        .NameComplexScript = "+mn-cs"
        .NameFarEast = "+mn-ea"
        .Fill.Visible = msoTrue
        .Fill.ForeColor.RGB = RGB(0, 0, 0)
        .Fill.Transparency = 0
        .Fill.Solid
        .Size = 18
        .Italic = msoFalse
        .Kerning = 12
        .Name = "+mn-lt"
        .UnderlineStyle = msoNoUnderline
        .Strike = msoNoStrike
    End With
    ActiveChart.ChartArea.Select
    ActiveSheet.Shapes("Диаграмма 1").ScaleWidth 1.48125, msoFalse, _
        msoScaleFromTopLeft
    ActiveSheet.Shapes("Диаграмма 1").ScaleHeight 1.4010414844, msoFalse, _
        msoScaleFromBottomRight
    ActiveSheet.Shapes("Диаграмма 1").ScaleHeight 1.1449815616, msoFalse, _
        msoScaleFromTopLeft
    ActiveSheet.Shapes("Диаграмма 1").ScaleWidth 1.0928271519, msoFalse, _
        msoScaleFromTopLeft
    ActiveChart.ChartGroups(1).SeriesLines.Select
    ActiveSheet.ChartObjects("Диаграмма 1").Activate
    ActiveChart.SeriesCollection(1).Points(19).Select
    ActiveSheet.ChartObjects("Диаграмма 1").Activate
    ActiveChart.SeriesCollection(1).Points(18).Select
    ActiveSheet.ChartObjects("Диаграмма 1").Activate
    ActiveChart.SeriesCollection(1).Points(17).Select
    ActiveSheet.ChartObjects("Диаграмма 1").Activate
    ActiveChart.SeriesCollection(1).Points(16).Select
    ActiveSheet.ChartObjects("Диаграмма 1").Activate
    ActiveChart.SeriesCollection(1).Points(15).Select
    ActiveSheet.ChartObjects("Диаграмма 1").Activate
    ActiveChart.SeriesCollection(1).Points(14).Select
    ActiveSheet.ChartObjects("Диаграмма 1").Activate
    ActiveChart.SeriesCollection(1).Points(13).Select
    ActiveSheet.ChartObjects("Диаграмма 1").Activate
    ActiveChart.SeriesCollection(1).Points(12).Select
    ActiveSheet.ChartObjects("Диаграмма 1").Activate
    ActiveChart.SeriesCollection(1).Points(11).Select
    ActiveSheet.ChartObjects("Диаграмма 1").Activate
    ActiveChart.SeriesCollection(1).Points(10).Select
    ActiveSheet.ChartObjects("Диаграмма 1").Activate
    ActiveChart.SeriesCollection(1).Points(9).Select
    ActiveSheet.ChartObjects("Диаграмма 1").Activate
    ActiveChart.SeriesCollection(1).Points(8).Select
    ActiveSheet.ChartObjects("Диаграмма 1").Activate
    ActiveChart.SeriesCollection(1).Points(7).Select
    ActiveSheet.ChartObjects("Диаграмма 1").Activate
    ActiveChart.SeriesCollection(1).Points(6).Select
    ActiveSheet.ChartObjects("Диаграмма 1").Activate
    ActiveChart.SeriesCollection(1).Points(5).Select
    ActiveSheet.ChartObjects("Диаграмма 1").Activate
    ActiveChart.SeriesCollection(1).Points(4).Select
    ActiveSheet.ChartObjects("Диаграмма 1").Activate
    ActiveChart.SeriesCollection(1).Points(3).Select
    ActiveSheet.ChartObjects("Диаграмма 1").Activate
    ActiveChart.SeriesCollection(1).Points(2).Select
    ActiveSheet.ChartObjects("Диаграмма 1").Activate
    ActiveChart.SeriesCollection(1).Points(1).Select
    ActiveSheet.ChartObjects("Диаграмма 1").Activate
    ActiveChart.SeriesCollection(1).Select
    ActiveSheet.ChartObjects("Диаграмма 1").Activate
    ActiveChart.SeriesCollection(2).Points(20).DataLabel.Select
    ActiveSheet.ChartObjects("Диаграмма 1").Activate
    ActiveChart.SeriesCollection(2).Points(19).DataLabel.Select
    ActiveSheet.ChartObjects("Диаграмма 1").Activate
    ActiveChart.SeriesCollection(2).Points(18).DataLabel.Select
    ActiveSheet.ChartObjects("Диаграмма 1").Activate
    ActiveChart.ChartArea.Select
    ActiveSheet.Shapes("Диаграмма 1").IncrementLeft -96.75
    ActiveSheet.Shapes("Диаграмма 1").IncrementTop 9
    ActiveWindow.SmallScroll Down:=-80
    ActiveChart.ClearToMatchStyle
    ActiveChart.ChartStyle = 10
    ActiveChart.ClearToMatchStyle
' добавление графика конец

   '  форматирование таблицы
       Columns("A:C").Select
    ActiveSheet.ListObjects.Add(xlSrcRange, Range("$A:$C"), , xlYes).Name = _
        "Таблица5"
       Range("Таблица5[[#Headers],[Униграмма]]").Select
    Range("Таблица5[[#Headers],[Униграмма]]").AddComment
    Range("Таблица5[[#Headers],[Униграмма]]").Comment.Visible = True
    Range("Таблица5[[#Headers],[Униграмма]]").Comment.Text Text:= _
        "Униграмма (лемма)  - это исходная форма слова. "
    'Selection.ShapeRange.IncrementLeft -62.25
    'Selection.ShapeRange.IncrementTop 58.5
    '  форматирование таблицы
End Sub

Еще проблема в том, что ошибка рандомная - то есть, то нет!
не знаю даже куда копать(((
Скрытие строк с ошибкой #НД, Макрос
 
Цитата
Дмитрий Бобровников написал:
Код
Sub УдалениеСтрокПоНесколькимУсловиям()
    Dim ra As Range, delra As Range
    Application.ScreenUpdating = False    ' отключаем обновление экрана
 
    ' ищем и удаляем строки, содержащие заданный текст
   ' (можно указать сколько угодно значений, и использовать подстановочные знаки)
   УдалятьСтрокиСТекстом = Array("скрыть")
 
    ' перебираем все строки в используемом диапазоне листа
   For Each ra In ActiveSheet.UsedRange.Rows
        ' перебираем все фразы в массиве
       For Each word In УдалятьСтрокиСТекстом
            ' если в очередной строке листа найден искомый текст
           If Not ra.Find(word, , xlValues, xlPart) Is Nothing Then
                ' добавляем строку в диапазон для удаления
               If delra Is Nothing Then Set delra = ra Else Set delra = Union(delra, ra)
            End If
        Next word
    Next
 
    ' если подходящие строки найдены, то: (оставьте одну из 2 следующих строк)
   If Not delra Is Nothing Then delra.EntireRow.Hidden = True    ' скрываем их
End Sub

Добрый день! Подскажите пожалуйста формучане, как сделать чтобы поиск шел по ячейки целиком.
Т.е. нужно найти и скрыть (удалить) строки по нескольким условиям, которые содержат текст в ячейки целиком.
Изменено: mazersw - 10.01.2021 17:06:56
Размыть текст через одну строчку
 
ок спасибо понял
Страницы: 1 2 3 След.
Наверх