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

Страницы: 1 2 3 4 5 След.
Удалить размноженное условное форматирование и воссоздать по новой
 
Добрый день.
Включаете марккодер, удаляете УФ со всего листа и делаете УФ как надо, отключаете марккодер. Используете полученный макрос при необходимости.
Если Вам нужна подсветка активной строки/столбца - поищите на форуме тему "координатное выделение".
Как-то так.
Расчет количества ТМЦ для изготовления металлоконструкций
 
Добрый день.
Может, делал кто для себя в экселе расчет количества ТМЦ для изготовления арматуры на ЛЭП 0,4-10 кВ (например: траверсы ТМ, ТН; хомуты, оголовки и т.д.) - поделитесь пожалуйста.
Проблема в чём: начал считать согласно чертежа по деталировке - получаются одни цифры; начал считать по размерам по чертежу с помощью Металлического калькулятора - другие цифры. Запутался.
P.S. Если обратился не туда-прошу прощения.
Запрет на переключение на другие приложения до окончания работы макроса в рабочей книге.
 
Добрый день.
Спасибо за ответ.
Возможно я не правильно объяснил проблему:пользователь выполнил какое то действие в рабочей книге на листе-макрос, расположенный в модуле листа, запускается (по сути по любому "чиху") и делает то для чего предназначен-в этот момент пользователь активирует другую книгу эксель (а макрос ещё не завершил свою работу) и макрос завершает свою работу уже в другой книге, в моём случае ставит защиту на лист на который перешёл пользователь в другой книге.
Мои Selection (имеется в виду часть кода после-'ЗАМЕНА ПУСТЫХ НА ДРАНТЯ-как я понимаю).
Я понимаю что Selection это не есть хорошо,но к сожалению это всё на что я способен. В этом куске кода, когда пользователь выделил ячейку или диапазон ячеек именно в 12 столбике и нажал Delete, удалённые значения автоматически меняются на определённое числовое значение (cell.Value = "90001676")-если подскажете как сделать правильно-буду признателен.
Я сам отлавливал завершение работы макроса в другой книге и был свидетелем такого же у пользователя, при этом столбик 12 не был активирован, т.е. часть кода с Selection не отрабатывала.
Я понимаю-нужно либо увеличивать быстродействие работы макроса ("...очень много всего у Вас собрано в кучу..." - к сожалению убирать отсюда нежелательно-юзеры быстро приведут книгу в нечитабельное и нерабочее состояние, выше я писал, что всё это защита от юзеров), либо каким либо образом запрещать пользователю во время работы макроса переключаться на другую книгу, либо ещё что-то.
Как-то так.
Ещё раз спасибо за ответ.
Запрет на переключение на другие приложения до окончания работы макроса в рабочей книге.
 
Спасибо за ответ.
Но, на мой взгляд, не важно что делает макрос в книге, в которой он находится, важно не дать пользователю переключиться на другой файл эксель (или приложение) до завершения работы макроса.
Извините если что не так говорю.
Запрет на переключение на другие приложения до окончания работы макроса в рабочей книге.
 
Добрый день.
Наконец дошли руки, ноги, мозги (мозгов, кстати, нет).
Выполнил совет из #3 (строка 5,6 - наверно я балбес). Но проблема осталась: макрос (лежит в модуле листа) отрабатывает, и если в это время переключиться на другую книгу - заканчивает свои действия в этой другой книге (что очень не хорошо).
Макрос (марккодерный мусор-знаю)-плод моей неравной борьбы с криворукими юзерами, по частям был собран с помощью Планетян (за что огромное спасибо не равнодушным).
Ткните носом пожалуйста.
Код
Private Sub Worksheet_Change(ByVal Target As Range)
Dim i As Long, cOlZ As Long, strOk As Long, strZ As Long
Dim tMp As Variant
Dim cLr As Boolean
Dim Workbook As Workbook
Set Workbook = ActiveWorkbook
With ThisWorkbook
'ВСТАВЛЯЕМ ТОЛЬКО ЗНАЧЕНИЯ
If Target.Columns.Count > 6 Then Exit Sub
If Cells(1, 1).Value > 0 Then
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
If Application.CutCopyMode Then
        Application.EnableEvents = 0
        Application.Undo: Target.PasteSpecial xlPasteValues
        Application.EnableEvents = -1
End If
    Application.ScreenUpdating = True
    Application.DisplayAlerts = True
End If

'ТЕКСТ В ЧИСЛА
  If Cells(1, 1).Value > 0 Then
   Dim rArea As Range
   On Error Resume Next ' обработчик ошибок
   'ActiveWindow.RangeSelection   ' диапазон выбранных ячеек листа даже если выбран графический объект
   'ActiveWindow.RangeSelection.SpecialCells(xlCellTypeConstants).Select ' в выбранном диапазоне выделить ячейки с константами _
   так будет быстрее, чем обрабатывать все ячейки в Selection
   If Err Then Exit Sub ' если нужных ячек не оказалось, то их невозможно выбрать и будет ошибка
   With Application: .ScreenUpdating = False: .EnableEvents = False: .Calculation = xlManual: End With ' отключаем все замедляющие процедуры

   For Each rArea In Selection.Areas 'т.к. выбранными скорее всего окажутся не смежные ячейки, а области, то обрабатывать нужно каждую из областей
      rArea.FormulaLocal = rArea.FormulaLocal ' значения во всех ячейках области заменить на них же. При этом произойдёт обновление форматов (это такая не документированная особенность Excel)
   Next rArea
   With Application: .ScreenUpdating = True: .EnableEvents = True: .Calculation = xlAutomatic: End With ' включаем все обратно в обычный режим.
  End If
  
'УСТАНОВКА ОДИНОЧНОГО КОММЕНТАРИЯ НАЧАЛО
If Target.Columns.Count > 6 Then Exit Sub
If Cells(1, 1).Value = 2 Then

   Application.ScreenUpdating = True
   Application.Calculation = xlCalculationAutomatic
   Application.EnableEvents = True
   Application.DisplayStatusBar = True
   Application.DisplayAlerts = True
   Application.ScreenUpdating = False
   Application.DisplayAlerts = False
  
    Dim vValue
    On Error Resume Next
    If Target <> vValue Then Target.Interior.Color = vbGreen
 
    Application.ScreenUpdating = True
    Application.DisplayAlerts = True
End If
 'УСТАНОВКА ГРУППОВОГО КОММЕНТАРИЯ КОНЕЦ
 
'УСТАНОВКА ОДИНОЧНОГО КОММЕНТАРИЯ НАЧАЛО2
If Target.Columns.Count > 6 Then Exit Sub
If Sheets("Бюджет").Cells(10, 138).Value = 1 Then
    Application.ScreenUpdating = False
    Application.Calculation = xlCalculationManual
    Application.EnableEvents = False
    Application.DisplayStatusBar = False
    Application.DisplayAlerts = False
ActiveSheet.Unprotect Password:="123"
    Dim OldComment As String, NewComment As String, objCell As Range
    If Target.Cells.Count = 1 Then
    NewComment = Now() & "; " & Application.UserName
    If Target.Comment Is Nothing Then
        Target.AddComment NewComment
    Else
        OldComment = Target.Comment.Text
        Target.Comment.Text NewComment & vbLf & OldComment
    End If
    Target.Comment.Shape.TextFrame.AutoSize = True
    Target.Comment.Visible = True
    DoEvents
        Target.Comment.Visible = False
 'УСТАНОВКА ОДИНОЧНОГО КОММЕНТАРИЯ КОНЕЦ2
 'УСТАНОВКА ГРУППОВОГО КОММЕНТАРИЯ НАЧАЛО2
    Else
    Set cc = Selection.SpecialCells(xlCellTypeVisible)
    For Each c In cc
    NewComment = Now() & "; " & Application.UserName
    On Error Resume Next
    If c.Comment Is Nothing Then
        c.AddComment NewComment
    Else
        OldComment = c.Comment.Text
        c.Comment.Text NewComment & vbLf & OldComment
    End If
    c.Comment.Shape.TextFrame.AutoSize = True
    c.Comment.Visible = True
    DoEvents
        c.Comment.Visible = False
    i = i + 1
    Next
    End If
    ActiveSheet.Protect Password:="123", UserInterfaceOnly:=True, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
        AllowFormattingRows:=True, AllowFiltering:=True
        
    Application.ScreenUpdating = True
    Application.Calculation = xlCalculationAutomatic
    Application.EnableEvents = True
    Application.DisplayStatusBar = True
    Application.DisplayAlerts = True
    Application.Calculation = xlAutomatic
    End If
 'УСТАНОВКА ГРУППОВОГО КОММЕНТАРИЯ КОНЕЦ2

'''''''''''''''''''''''''''''''''''''''''''''''
'ЗАМЕНА ПУСТЫХ НА ДРАНТЯ
If Target.Column = 12 Then
If Target.Value = "" Then
Application.ScreenUpdating = False
Application.EnableEvents = False
Application.DisplayStatusBar = False
Application.DisplayAlerts = False
Dim cell As Range 'переменная для перебора ячеек
        Dim r As Range 'переменная для диапазона используемых ячеек
   For Each cell In Selection
lRow = Cells(Rows.Count, 23).End(xlUp).Row + 1
'lRow = Selection.Row 'первая строка
lLastrowInSelectedRange = Selection.Row + Selection.Rows.Count - 1 'последняя строка
        If cell.Value = "" Then
If lLastrowInSelectedRange < lRow Then
            cell.Value = "90001676"
End If
        End If
   Next
   End If
    Application.ScreenUpdating = True
    Application.EnableEvents = True
    Application.DisplayStatusBar = True
    Application.DisplayAlerts = True
   End If
 '''''''''''''''''''''''''''''''''''''''''''''''
'ЗАМЕНА НУЛЕЙ И ТЕКСТА
'If Target.Column = 15 Then
    'Application.EnableEvents = False
    'For Each cel In Target.Cells
    '    If Application.WorksheetFunction.IsText(cel) Then Application.Undo
    '    If cel.Value & "" = "0" Then Application.Undo
    'Next
   'Application.EnableEvents = True
'End If
 '''''''''''''''''''''''''''''''''''''''''''''''
If Target.Column <> 58 Then Exit Sub
Dim tx
    If Target.Count > 1 Then Exit Sub
    If Len(Target.Value) = 0 Then Exit Sub
    tx = Split(Target.Value, ",")
    For i = LBound(tx) To UBound(tx)
        If IsNumeric(tx(i)) Then
            If Val(tx(i)) > 12 Or Val(tx(i)) < 1 Then
                MsgBox "Ошибка!" & vbCrLf & vbCrLf & "Введите число или числа через запятую от 1 до 12" & vbCrLf & vbCrLf & "Нажмите 'ОК' и повторите"
                Exit Sub
            End If
        End If
    Next i
'Dim cell As Range 'переменная для перебора ячеек
 '       Dim r As Range 'переменная для диапазона используемых ячеек
        Set r = Range("BF14:BF10000") 'Все используемые ячейки
   For Each cell In r.Cells
        'Если один символ справа равен ","
        If Right(cell.Value, 1) = "," Then
            'замена значения ячейки на то же значение, но без последнего символа
            cell.Value = Left(cell.Value, Len(cell.Value) - 1)
        End If
   Next
'''''''''''''''''''''''''''''''''''''''''''''''''
'СНИМАЕМ АВОФИЛЬТР
Application.ScreenUpdating = False
'Application.EnableEvents = False
Application.DisplayStatusBar = False
Application.DisplayAlerts = False

Application.Run "Фильтр_очистить"
'''''''''''''''''''''''''''''''''''''''''''''''''
strZ = Target.Row
ActiveSheet.Unprotect Password:="123"
For cOlZ = 32 To 55
    If Left(Cells(strZ, cOlZ).Formula, 3) = "=IF" Then Exit For
Next cOlZ
If cOlZ >= 55 Then Exit Sub
strOk = strZ + 1
Do Until (Len(Cells(strOk, cOlZ)) = 0) Or (Left(Cells(strOk, cOlZ).Formula, 3) = "=IF")
    strOk = strOk + 1
Loop
strOk = strOk - 1
If cOlZ < 54 Then Range(Cells(strZ, cOlZ + 2), Cells(strOk, 55)).ClearContents
tMp = Split(Application.Substitute(Application.Substitute(Application.Substitute(Target.Value, " ", ""), Application.DecimalSeparator, "."), ",", "."), ".")
If UBound(tMp) < 0 Then Exit Sub
cLr = True
For i = 0 To UBound(tMp)
    If (Val(tMp(i)) <= 12) Or (Val(tMp(i)) >= 1) Then
        If cOlZ = 32 + 2 * (tMp(i) - 1) Then
            cLr = False
        Else
            Range(Cells(strZ, cOlZ), Cells(strOk, cOlZ + 1)).Copy Cells(strZ, 32 + 2 * (tMp(i) - 1))
        End If
    End If
Next i
If cLr Then Range(Cells(strZ, cOlZ), Cells(strOk, cOlZ + 1)).ClearContents
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
 'СТАВИМ АВТОФИЛЬТР С ЗАПОМНЕНЫМИ ЗНАЧЕНИЯМИ
 Application.Run "Фильтр_поставить"
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
ActiveSheet.Protect Password:="123", UserInterfaceOnly:=True, AllowFormattingCells:=True, AllowFormattingColumns:=True, _
        AllowFormattingRows:=True, AllowFiltering:=True
        
    Application.ScreenUpdating = True
    Application.EnableEvents = True
    Application.DisplayStatusBar = True
    Application.DisplayAlerts = True
End With
End Sub
Изменено: mamalot - 08.11.2019 08:25:58
Исчезают данные в строке состояния при "не активном" окне
 
Jasdero, как-то так:
Код
Public WithEvents app As Application
Private Sub Workbook_Open()
  Set app = Application
End Sub
Private Sub App_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
'https://www.planetaexcel.ru/forum/index.php?PAGE_NAME=read&FID=1&TID=120771&TITLE_SEO=120771-ischezayut-dannye-v-stroke-sostoyaniya-pri-ne-aktivnom-okne
Dim d As Range, summ As Double
If Target.Columns.Count > 100 Then Exit Sub 'выходим если выделен весь лист (сейчас 100 столбцов)
For Each d In Selection
  If IsNumeric(d.Value) Then
    summ = summ + d
  End If
Next
''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Dim CellCount As Variant, rng As Range
    For Each rng In Selection.Areas
        RowsCount = rng.Rows.Count
        ColumnsCount = rng.Columns.Count
        CellCount = CellCount + RowsCount * ColumnsCount
    Next
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Mysumm = Format(summ, "#,##0.000") 'после точки регулируем кол-во отображаемых нулей после запятой
    Application.StatusBar = "СУММА: " & Mysumm & "   КОЛИЧЕСТВО: " & CellCount
End Sub
Модераторам: прошу прощения если сильно нарушаю.
Исчезают данные в строке состояния при "не активном" окне
 
Я не нашел. Не знаю.
Исчезают данные в строке состояния при "не активном" окне
 
Jasdero VBAProject(PERSONAL.XLSB) - личная книга макросов в "ЭтаКнига" (так будет работать во всех открытых книгах эксель). Или в "ЭтаКнига" конкретного файла (так будет работать только в этом файле).
Код
Public WithEvents app As Application
Private Sub Workbook_Open()
  Set app = Application
End Sub
Private Sub App_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Dim d As Range, summ As Double
For Each d In Selection
  If IsNumeric(d.Value) Then
    summ = summ + d
  End If
Next
''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Dim CellCount As Variant, rng As Range
    For Each rng In Selection.Areas     'перебираем все выделенные области
        RowsCount = rng.Rows.Count                          'число строк
        ColumnsCount = rng.Columns.Count                    'число столбцов
        CellCount = CellCount + RowsCount * ColumnsCount    'накапливаем общее число ячеек
    Next
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''https://www.planetaexcel.ru/forum/index.php?PAGE_NAME=read&FID=1&TID=120771&TITLE_SEO=120771-ischezayut-dannye-v-stroke-sostoyaniya-pri-ne-aktivnom-okne
    Application.StatusBar = "СУММА: " & summ & "   КОЛИЧЕСТВО: " & CellCount
End Sub
Только насчёт выделения всего листа: сейчас не надо, а потом понадобится - и, как результат, потеря несохраненных данных (например).

P.S. Файл не хочет загружаться.
Изменено: mamalot - 18.09.2019 12:03:53
Исчезают данные в строке состояния при "не активном" окне
 
А если выделить весь лист-эксель виснет наглухо.
И
Код
If Cells.Select Then Exit Sub 
не сильно помогает.
Код
Private Sub App_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
'If Cells.Select Then Exit Sub
Dim d As Range, summ As Double
For Each d In Selection
  If IsNumeric(d.Value) Then
    summ = summ + d
  End If
Next
''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Dim CellCount As Variant, rng As Range
    For Each rng In Selection.Areas     'перебираем все выделенные области
        RowsCount = rng.Rows.Count                          'число строк
        ColumnsCount = rng.Columns.Count                    'число столбцов
        CellCount = CellCount + RowsCount * ColumnsCount    'накапливаем общее число ячеек
    Next
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Application.StatusBar = "СУММА: " & summ & "   КОЛИЧЕСТВО: " & CellCount
End Sub
Запрет на переключение на другие приложения до окончания работы макроса в рабочей книге.
 
Спасибо.
Буду пробовать.
Я просто пытаюсь учиться доброму, вечному, светлому - но получается не всегда.
Спасибо.
Запрет на переключение на другие приложения до окончания работы макроса в рабочей книге.
 
 Добрый день.
 Есть книга с макросами (для облегчения рутины). Отдал книгу коллегам. Коллеги жалуются что не работает (выходит окно аварийного завершения работы макроса по различным причинам).
 Как оказалось - во время работы макроса пользователь переключается (мышкой или клавишами) (колесико крутится а им скучно) на другую книгу эксель/программу и появляется ошибка (что вполне логично: в другой книге другие данные и структура).
 Вопрос: как запретить переключение между рабочей книгой и другими книгами эксель и другими программами, пока не закончит работу макрос в рабочей книге (посмотрел на просторах не нашёл).
Спасибо.
Разрешить вставлять только значения
 
Или посмотрите здесь#6.
Как избавится от предупреждения средствами VBA?
 
Данный вопрос здесь уже обсуждался.
Нашёл.
И ещё.
Изменено: mamalot - 31.05.2019 10:13:40
Вставить скопированную строку на защищенном листе макросом
 
Макрос "КопироватьСтроку" у Вас ничего не копирует.
Попробуйте заменить строки на:
Код
ActiveCell.EntireRow(1).Select
Selection.Copy
Изменено: mamalot - 21.05.2019 13:37:04
Использование имени книги из ячейки листа активной книги для активации макроса другой открытой не активной книги
 
Спасибо!
Самый классный сайт :D !
Код
Application.Run (b)
Использование имени книги из ячейки листа активной книги для активации макроса другой открытой не активной книги
 
Добрый день.
Как есть.
Есть две книги. Открываем книгу "цвет22", открываем книгу "цвет22_123". При открытии последней книги в появившемся сообщении выбираем "ДА". При этом активируется макрос из первой книги.
Для активации макроса из первой книги используется:
Код
Call Application.Run("'цвет22.xlsb'!Module1.макрос1")
Всё работает прекрасно.
Но: периодически названия обоих книг меняется. После переименования приходится руками перепрописывать названия книг в макросах.
Как хочется.
Хочется чтобы названия книг брались из ячеек листов книг в которых прописаны их названия (названия меняются автоматически при изменении имён книг-формулы).
Пытался использовать конструкцию:
Код
a = Sheets("Лист1").Cells(1, 3).Value
b = a & "'!Module1.макрос1"""
Call Application.Run("'b")
(эта конструкция сейчас в макросе закомментирована) но выдаёт ошибку:
Код
Run-time error '1004', Application-defiened or object-defined error
Ошибка или в способе каким я пытаюсь реализовать свою задумку или в синтаксисе. Честно искал, но понять мне не дано.
Прошу помощи.
Изменено: mamalot - 12.04.2019 09:04:34
Контроль ввода значений в диапазоне
 
Ребята, спасибо! Круто!
Вы маги и волшебники !!!
Протестирую - отпишусь.
Контроль ввода значений в диапазоне
 
Михаил Лебедев: Спасибо. Для ввода цифр в ручную работает замечательно.
Изменено: mamalot - 17.01.2019 13:24:42
Контроль ввода значений в диапазоне
 
Ігор Гончаренко: Спасибо. Для ввода чисел в ручную работает.
                           Но 0,25, например, тоже не внесёшь (как и 0,5; 0,75).
Изменено: mamalot - 17.01.2019 13:28:56
Контроль ввода значений в диапазоне
 
Добрый день.
Есть макрос  в модуле лиса "Лист1" (по-моему здесь на форуме нарыл) который заливает цветом все изменённые ячейки-всё работает отлично.
Код
Private Sub Worksheet_Change(ByVal Target As Range)
   Application.ScreenUpdating = False
   Application.DisplayAlerts = False 
    Dim vValue
    On Error Resume Next
       If Target <> vValue Then Target.Interior.Color = vbGreen
   Application.ScreenUpdating = True
   Application.DisplayAlerts = True
End Sub

Переделал макрос  (в модуле лиса "Лист2") который заливает цветом ячейку в которую ввели ноль-тоже всё работает.

Код
Private Sub Worksheet_Change(ByVal Target As Range)
   Application.ScreenUpdating = False
   Application.DisplayAlerts = False  
    Dim vValue
    On Error Resume Next
       If Target = 0 Then Target.Interior.Color = vbGreen
   Application.ScreenUpdating = True
   Application.DisplayAlerts = True
End Sub
А вот если переделать макрос чтобы менял введённый ноль на пусто  (в модуле лиса "Лист3") -эксель вылетает, аварийно закрывается.
Код
Private Sub Worksheet_Change(ByVal Target As Range)
   Application.ScreenUpdating = False
   Application.DisplayAlerts = False  
    Dim vValue
    On Error Resume Next
       If Target = 0 Then Target.Value = ""
   Application.ScreenUpdating = True
   Application.DisplayAlerts = True
End Sub
У меня задача: ячейка, в контролируемом диапазоне, должна оставаться пустой (очищаться) если в неё пытаются ввести ноль либо любое не числовое значение путём прямого ввода или при вставке скопированного диапазона (пока пытался решить для ноля).
Вообще я пытался решить этот вопрос с помощью проверки данных, но она слетает если вставлять скопированный диапазон. Запрещать вставку скопированного диапазона нельзя.
Гуглил не один день по данному вопросу, но-увы, чего-то мне не хватило.
Мой уровень-найти подходящее, попытаться понять как работает, переделать под себя.
Прошу подсказать в какую сторону рыть
Изменено: mamalot - 17.01.2019 13:48:30
Неактивен фильтр в файле с ограниченным доступом
 
Добрый день.
Файл Excel 2013 в формате .xlsb лежит на SharePoint.
Через: файл-защита книги-ограничить доступ-ограниченный доступ - раздаю права сотрудникам. У одних полный доступ, у других - только для чтения с правом копировать содержимое.
Проблема: у пользователей с правом для чтения неактивен автофильтр, что очень неудобно.
Про другие способы совместной работы в книге читал, но пока отрабатываю этот.
Как мне объяснили, к файлу, лежащему на SharePoint,по умолчанию все пользователи имеют полный доступ (у пользователей на этом этапе нет проблем). Проблема возникает после разграничения доступа встроенными средствами Excel.
Как можно исправить ситуацию с неактивным автофильтром при данном способе разграничения доступа к файлу?

 
"Защита от дурака" - как разрешить сохранять файл только избранным
 
БМВ, с записью изменений понятно - работает как Вы говорите. Я про автофильтр. У пользователей, которым назначены права только на просмотр, автофильтром невозможно пользоваться. Можно это как-то поправить?
"Защита от дурака" - как разрешить сохранять файл только избранным
 
Способ предложенный в #3 хороший, но пользователи у которых доступ только на просмотр не могут пользоваться автофильтром.
Или это можно поправить? (местные айтишники говорят что - нет).
Изменено: mamalot - 10.12.2018 08:56:15 (Изменено обращение с одного человеко к всем.)
Сохранение резервной копии файла с сервера на конкретный компьютер
 
Как и предполагалось-всё сложно.
Спасибо БМВ.
Сохранение резервной копии файла с сервера на конкретный компьютер
 
Воспользовавшись советом из приёмов пытаюсь настроить сохранение резервной копии файла из корпоративной сети на свой, конкретный компьютер.
Когда файл редактирую я, копия сохраняется на моём компьютере по пути "C:\Р\Р_2019 конец\Р_2019_приложения №40\Резервные копии 2019" без проблем.
Когда редактирует коллега - появляется сообщение что указанной папки не существует (что вполне логично, у коллеги не такой папки).
Что нужно дописать в путь сохранения копии файла, что бы она сохранялась на моём компьютере, даже если с файлом работал мой коллега?
Гуглил, но или спрашиваю не правильно, или ещё что-то - не нашёл ответ на свой вопрос.
Копирование ячеек с формулами, Кнопка для копирования ячеек с формулами на следующую строку
 
Как вариант.
С начало выделите строку под которой хотите вставить новую строчку.
Изменено: mamalot - 12.10.2018 23:26:32
Как оперативно проверять освободился от файл, который был занят другим пользователем?
 
Александр Котол, поделитесь решением?
Проверка данных вводимых в ячейку на VBA
 
Спасибо огромное  :) !!!
Проверка данных вводимых в ячейку на VBA
 
Добрый день.
Мучаюсь второй день (тупой я).
Необходимо чтобы после ввода данных в ячейку макрос проверил данные и если оно не проходят по критериям-выходим.
В ячейку вводятся числа (1,2,3,4,5,6,7,8,9,10,11,12)  через запятую в различных комбинациях (может быть просто 4).
Необходимо
получить все числа, разделённые запятыми и если хотябы одно число <1 или >12-выходим.
Не могу извлечь числа расположенные между запятыми.
На форуме находил подобные темы, но прикрутить не смог под свой случай.
Макрос в модуле листа:
Код
Sub Worksheet_Change(ByVal Target As Range)
    Dim tx As String
    Dim i As Long
    Dim t As String
    
    If Intersect(Target, Range("B:B")) Is Nothing Then
        Exit Sub
    End If
    If Target.Count > 1 Then Exit Sub
    tx = Target.Value
    If Len(tx) = 0 Then Exit Sub
    For i = 1 To Len(tx)
        t = Mid(tx, i, 1)
        If IsNumeric(t) Then
        MsgBox t
        If t > 12 Then
        MsgBox "Неверные данные"
        End If
        End If
    Next i
End Sub
Изменено: mamalot - 21.08.2018 10:23:04
Навигация по листам
 
А мне вот это понравилось.
Страницы: 1 2 3 4 5 След.
Наверх