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

Страницы: 1 2 След.
Как дописать в макрос еще одно ксловие
 
Ну это скорей для других разжевано. букву я мог и сам поменять в своем коде. а вопрос то был простой как в рабочий макрос прописать еще одно условие, только для ячейки "F2". я в синтаксе не понимаю. пробовал через ElseIf и не выходит. Всего то нужно, если в ячейках "D2" и "E2" нет текста, то текст брался из ячейки "F2". И не важно какие ячейки указаны, важен сам синтаксис правильного кода с условиями, а ячейки я и сам по необходимости могу поправить.
Как дописать в макрос еще одно ксловие
 
вопрос открвтый
Как дописать в макрос еще одно ксловие
 
Извините новичок, но по коду моего макроса видно, что из ячейки "D2" и "E2" текст переносится и нужно как и писалось раннее, добавить еще из "F2", если нет текста в "D2" и "E2".
Как дописать в макрос еще одно ксловие
 
Вопрос был задан четко, как в моем рабочем макросе прописать еще одно условие. и там из ячейки "D2" и "E2" текст переносился. и я и задал вопрос как еще добавить одно условие только для ячейки "F2", чтобы тоже переносился, если в ячейках нет текста "D2" и "E2" .
Как дописать в макрос еще одно ксловие
 
Сейчас текст из ячейки "E2" и "F2" подставляется в ячейку "D2", НО если текст находится в "D2", то он удаляется. как сделать, чтобы если текст есть в "D2", то он оставался, а остальные условия пропускались бы.
Как дописать в макрос еще одно ксловие
 
Цитата
написал:
   If ActiveSheet.Range("E2").Value <> "" Then
       ActiveSheet.Range("D2").Value = ActiveSheet.Range("E2").Value
   Else
       ActiveSheet.Range("D2").Value = ActiveSheet.Range("F2").Value
   End If

   MsgBox "Текст успешно скопирован в D2!", vbInformation
Этот макрос только удаляет текст, а не переносит в ячейку "D2"
Как дописать в макрос еще одно ксловие
 
Цитата
написал:
ThisWorkbook.Worksheets("Sheet1")
Только я не знаю, что обозначает Sheet1, то ли берет текст из ячейки, то ли в какую будет вставлена. в задание я спрашивал, как еще одно условие поставить в мой рабочий макрос, а здесь другие операторы и я их не знаю, если только методом тыка.
Как дописать в макрос еще одно ксловие
 
Цитата
написал:
   If ThisWorkbook.Worksheets("Sheet1").Range("E2").Value <> "" Then
       ThisWorkbook.Worksheets("Sheet1").Range("D2").Value = ThisWorkbook.Worksheets("Sheet1").Range("E2").Value
   Else
       ThisWorkbook.Worksheets("Sheet1").Range("D2").Value = ThisWorkbook.Worksheets("Sheet1").Range("F2").Value
   End If

   MsgBox "Текст успешно скопирован в D2!", vbInformati
Выдает ошибку (указана на скрине)
Как дописать в макрос еще одно ксловие
 
Сорри

код макроса.

Код
      If Range("D5").Value <> "" Then
        Range("D2").Value = Range("D5").Value
    Else
        Range("D2").Value = Range("E5").Value
   
    End If
Как дописать в макрос еще одно ксловие
 
Доброго времени суток. Есть рабочий макрос, который копирует текст из ячейки "E2" и вставляет этот текст в колонку "D2". Как добавить условие если текста нет в ячейке "E2", то брать текст из ячейки "F2". если в "D2" текст есть, то остальные условия не нужно выполнять.

код макроса

Код
If Range("D5").Value <> "" Then
        Range("D2").Value = Range("D5").Value
    Else
        Range("D2").Value = Range("E5").Value
   
    End If
Изменено: sotex2 - 27.01.2025 11:45:50
Квк сохранить картинку в Excel на листе
 
при запуске макроса, он с начало удаляет ссылку на картинку и саму картинку, а потом с диска вставляет указанную картинку.
Но, когда я сохраненный файл открываю на другом ПК, то картинки нет.
как сделать так, чтобы картинка сохранялась на листе?

код макроса

Код
Sub Макрос1()
'
' Макрос1 Макрос
'

'
    ActiveSheet.Shapes.Range(Array("Picture 3")).Select
    Selection.ShapeRange.Item(1).Hyperlink.Delete
    Selection.Delete
    ActiveWorkbook.Save
    
    Range("A1").Select
    ActiveSheet.Pictures.Insert("S:\logo.png").Select
    ActiveSheet.Hyperlinks.Add Anchor:=Selection.ShapeRange.Item(1), Address:= _
        "https://bazaemail.ru"
    Range("C12").Select
    ActiveWorkbook.Save
End Sub
Изменено: sotex2 - 26.01.2025 23:17:45
Как сделать автоматическую ширину в последней колонке
 
Цитата
написал:
Хотя, для Умной таблицы лучше сделать так
А что существенно это изменит?
Как сделать автоматическую ширину в последней колонке
 
Сейчас все работает. Спасибо.
Изменено: Sanja - 25.01.2025 16:44:20
Как сделать автоматическую ширину в последней колонке
 
Цитата
написал:
Приложите уже нормальный файл-пример. И будет Вам счастье
файл приложил

https://wdfiles.ru/29Jy6
https://wdfiles.ru/29Jy7
Как сделать автоматическую ширину в последней колонке
 
как же все таки растянуть последнюю колонку в документе автоматически.

такой код срабатывает - Columns("буква колонки").AutoFit, но есть одно НО, это постоянно лезть в макрос и прописывать нужную колонку. а хотелось бы, чтобы макрос автоматически находил последнюю колонку и растягивал ее автоматически.
Как сделать автоматическую ширину в последней колонке
 
Цитата
написал:
Cells(4, iLastCol).EntireColumn.AutiFit
Я исправил синтаксис, но показывает ошибку. скрин приложил.
Как сделать автоматическую ширину в последней колонке
 
ни один код не срабатывает
-----------------------------------------

Код
Sub ПОСЛЕДНИЙ_СТОЛБЕЦ()
'
' ПОСЛЕДНИЙ СТОЛБЕЦ Макрос
'
lLastCol = Cells(1, Columns.Count).End(xlToLeft).Column
End Sub

================================================

Код
Sub ПОСЛЕДНИЙ_СТОЛБЕЦ()
'
' ПОСЛЕДНИЙ СТОЛБЕЦ Макрос
'

'
Dim iLastCol As Integer
iLastCol = Cells(4, Columns.Count).End(xlToLeft).Column
End Sub
Как сделать автоматическую ширину в последней колонке
 
макрос будет только по названию колонки делать авто ширину. а нужно, чтобы макрос сам вычислял последнюю колонку, так как в разных документах количество столбцов разное.
Как сделать автоматическую ширину в последней колонке
 
Доброго времени суток. подскажите как в макросе Excel сделать, чтобы последняя колонка автоматически принимала ширину по вхождению текста в ячейках. смотреть скрин.
Как прописать условие в макросе Excel
 
Спасибо
Как прописать условие в макросе Excel
 
Доброго времени суток. подскажите как сделать условие в макросе. Если  есть текст в ячейке D5, то копировать текст в ячейку D2. Но если текста  нет в D5, то копировать текст из ячейки E5 в D2. скрин приложил.
Как изменить номер колонки, Как изменить название колонки
 
Цитата
написал:
Это значит, что код я проверил. Не поленился, создал пример, внес данные в столбец и запустил. Указал НОМЕР столбца(3 для столбца С).А что указываете ВЫ и где у Вас расположены данные?
Спасибо за отведенное время, из вашей переписке я понял, что нужно прописывать цифры, а я при выборе колонки прописывал буквы.
Как изменить номер колонки, Как изменить название колонки
 
До этого я вам не тот код прислал, но дело не в этом. применил ваш последний код, выбираю колонку и запускаю, но дубли не удаляются. из всего кода появляется только вкладка с выбором колонки и все. после запуска ничего на происходит, то есть не удаляются дубли. может проще будет не по выбору колонки, а при выделении всей колонке будет.
Как изменить номер колонки, Как изменить название колонки
 
Цитата
написал:
Надо быть еще внимательнее  у Вас лишняя скобка с кавычками. Я уже даже не понимаю как Вы эти коды копируете  Как из такого:lcol = val(inputbox("Укажите номер столбца", "Запрос параметра", "0"))могло получиться такое:lcol = Val(InputBox("("Укажите номер столбца", "Запрос параметра", "0"))

Я поправил код и сейчас появляется вкладка с выбором колонки, но не чего не происходит, дубли не удаляются. ошибок при запуске нет, но и дубли не удаляются. как быть? код ниже.

Код
Sub УДАЛЕНИЕ_ДУБЛЕЙ_В_ЯЧЕЙКАХ_В_КОЛОНКАХ()
Dim lcol&
lcol = Val(InputBox("Укажите номер столбца", "Запрос параметра", "0"))
If lcol = 0 Then
Exit Sub

Dim lrow As Long, arrMail, key, strMail As String, dicTemp As Object
Application.ScreenUpdating = False
lrow = Cells(2, lcol).End(xlDown).Row
Set dicTemp = CreateObject("Scripting.Dictionary")
For I = 2 To lrow
    arrMail = Split(Trim(Replace(Cells(I, lcol), ",", " ")), " ")
    For j = 0 To UBound(arrMail)
        If Not dicTemp.Exists(arrMail(j)) Then
            key = dicTemp.Item(arrMail(j))
            strMail = strMail & arrMail(j) & ", "
        End If
    Next j
    If Len(strMail) > 0 Then Cells(I, lcol) = Left(strMail, Len(strMail) - 2) Else Cells(I, lcol) = ""
    strMail = ""
Next I
arrMail = Split(Trim(Replace(Cells(2, lcol), ",", " ")), " ")
Application.ScreenUpdating = True
End If
End Sub
Как изменить номер колонки, Как изменить название колонки
 
Цитата
написал:
Внимательнее надо быть. Я же привел пример кода, как правильно заменить. Посмотрите как показал я и как сделали Вы. Найдите два отличия. Подсказка: я lcol записывал не в кавычках, а Вы их зачем-то все же поставили...Плюс уточню: когда появляется запрос - надо указать номер столбца, иначе код ничего не будет делать, т.к. нельзя применить код к столбцу с номером 0.


Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...

Я поправил код ниже, но появляется ошибка, указал на скрине 2.



Код
Sub УДАЛЕНИЕ_ДУБЛЕЙ_В_ЯЧЕЙКАХ_В_КОЛОНКАХ()
Dim lcol&
lcol = Val(InputBox("("Укажите номер столбца", "Запрос параметра", "0"))
If lcol = 0 Then
Exit Sub
End If
Dim lrow As Long, arrMail, key, strMail As String, dicTemp As Object
Application.ScreenUpdating = False
lrow = Cells(2, lcol).End(xlDown).Row
Set dicTemp = CreateObject("Scripting.Dictionary")
For I = 2 To lrow
    arrMail = Split(Trim(Replace(Cells(I, lcol), ",", " ")), " ")
    For j = 0 To UBound(arrMail)
        If Not dicTemp.Exists(arrMail(j)) Then
            key = dicTemp.Item(arrMail(j))
            strMail = strMail & arrMail(j) & ", "
        End If
    Next j
    If Len(strMail) > 0 Then Cells(I, lcol) = Left(strMail, Len(strMail) - 2) Else Cells(I, lcol) = ""
    strMail = ""
Next I
arrMail = Split(Trim(Replace(Cells(2, lcol), ",", " ")), " ")
Application.ScreenUpdating = True
End Sub
Как удалить дубли в колонке, Как удалить дубли в колонке
 
Цитата
написал:
Удалите или закомментируйте строку КодOn Error resume next и напишите на какой строке кода возникает ошибка

После выбора колонки и запуска, никакая ошибка не появляется, остается все по прежнему без удаления дублей.
если удалить - "On Error resume next", то после запуска макроса выводится ошибка, смотрите скрин 1.
Как удалить дубли в колонке, Как удалить дубли в колонке
 
Цитата
написал:
На Вашем файле-примере ошибка не воспроизводится. Как быть?

Прикрепленные файлы
пример файла 2.xlsm  (16.56 КБ)

в вашем прикрепленном файле окошко для выбора появляется, и после выбора дубли не удаляются.
Как удалить дубли в колонке, Как удалить дубли в колонке
 
Окошко с выбором колонки выводится и после выбора, дубли не удаляются. как быть?
Как изменить номер колонки, Как изменить название колонки
 
Цитата
написал:
Возможно, проблема в опечатке. Я писал прямо в форум и опечатался. Должно быть InputBox, а не inputobox. А все остальное не должно вызывать затруднений.

Я не зная правильно или нет я вставил ваш код в свой, но окошко выводится для выбора колонки, только дальше ничего не происходит, тоесть не удаляются дубли. как пробовал совместить ваш код со своим, я приложил ниде. как быть?

Код
Sub УДАЛЕНИЕ_ДУБЛЕЙ_В_ЯЧЕЙКАХ_В_КОЛОНКАХ()
Dim lcol&
lcol = Val(InputBox("("Укажите номер столбца", "Запрос параметра", "0"))
If lcol = 0 Then
Exit Sub
End If

Dim lrow As Long, arrMail, key, strMail As String, dicTemp As Object
Application.ScreenUpdating = False
lrow = Cells(2, "lcol").End(xlDown).Row
Set dicTemp = CreateObject("Scripting.Dictionary")
For i = 2 To lrow
    arrMail = Split(Trim(Replace(Cells(i, "lcol"), ",", " ")), " ")
    For j = 0 To UBound(arrMail)
        If Not dicTemp.Exists(arrMail(j)) Then
            key = dicTemp.Item(arrMail(j))
            strMail = strMail & arrMail(j) & ", "
        End If
    Next j
    If Len(strMail) > 0 Then Cells(i, "lcol") = Left(strMail, Len(strMail) - 2) Else Cells(i, "lcol") = ""
    strMail = ""
Next i
arrMail = Split(Trim(Replace(Cells(2, "lcol"), ",", " ")), " ")
Application.ScreenUpdating = True
End Sub
Как изменить номер колонки, Как изменить название колонки
 
Цитата
написал:
Кодdim lcol&
lcol = val(inputobox("Укажите номер столбца","Запрос параметра","0"))
if lcol= 0 then
exit sub
end ifа далее везде в коде заменяете "Е" на lcol. На примере одной строки:Кодlrow = Cells(2, lcol).End(xlDown).Row
не получается вставить ваш код. подскажите как правильно разместить его в моем коде выше.
Страницы: 1 2 След.
Наверх